Trailmakers Wiki
trailmakers_en
https://trailmakers.wiki.gg/wiki/Trailmakers_Wiki
MediaWiki 1.39.4
first-letter
Media
Special
Talk
User
User talk
Trailmakers Wiki
Trailmakers Wiki talk
File
File talk
MediaWiki
MediaWiki talk
Template
Template talk
Help
Help talk
Category
Category talk
Module
Module talk
Gadget
Gadget talk
Gadget definition
Gadget definition talk
Map
Map talk
Template:Ambox
10
7
38
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<onlyinclude><includeonly><table style="{{{style|}}}" class="plainlinks ambox {{#ifeq:{{{format|}}}|tiny|ambox-tiny}} {{#switch:{{{border|}}}
| red = ambox-red
| orange = ambox-orange
| yellow = ambox-yellow
| purple = ambox-purple
| blue = ambox-blue
| green = ambox-green
| gray = ambox-gray
| #default = ambox-green
}} {{{class|}}}">
<tr>
<td class="ambox-image">{{{image|[[File:{{{icon|Information.png{{!}}48px}}}|{{#ifeq:{{{format|}}}|tiny|x20px}}|alt=]]}}}</td>
<td class="ambox-text">{{{type|}}}
{{#if:{{{info|}}}|{{#ifeq:{{{format|}}}|tiny||<div class="amsmalltext">
{{{info}}}
</div>}}}}</td></tr></table></includeonly></onlyinclude><noinclude>
{{doc}}
[[Category:Notice templates]]</noinclude>
32fe627ecb6c9c20a4757a890f8874f6dceea1b2
Template:Fullurl
10
8
40
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<includeonly>{{#if: {{{nolink|}}} | <nowiki>http://help.gamepedia.com/index.php?title=</nowiki>{{{1}}}{{#if: {{{2|}}} | &{{{2}}} }} |<!--
--><span class="plainlinks">{{#if: {{{text|}}} | [ }}{{fullurl: {{{1}}} | {{{2|}}} }} {{#if: {{{text|}}} | {{{text}}}]}}</span>}}</includeonly><noinclude>{{doc}}
[[Category:Formatting templates|{{PAGENAME}}]]</noinclude>
46367eacd22a6dce7076a2ab94d525b760c66e2b
Template:Stub
10
9
42
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<div class="nomobile">{{Ambox
| image = [[File:Icon-stub.svg|44px|Stub]]
| type = ''This article is a [[:Category:Stubs|stub]]. You can help {{SITENAME}} by {{fullurl|{{FULLPAGENAME}}|action{{=}}edit|text=expanding it}}.''
| border = orange
}}<br /></div><!--
--><div class="mobileonly" style="text-align:center">''This article is a [[:Category:Stubs|stub]]. You can help {{SITENAME}} by {{fullurl|{{FULLPAGENAME}}|action{{=}}edit|text=expanding it}}.''<br /><br /></div><includeonly>[[Category:Stubs]]</includeonly><noinclude>
{{doc}}
[[Category:Notice templates]]</noinclude>
f82226ac73001c29971eabb1d24c931b25cbd6e2
Test (achievement)
0
41
258
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<!-- This is just a test page -->
[[Category:Notice templates|DisambigMsg]]
d6fae1ce871035843e860abd2f50445bc38bd605
Test (class)
0
42
261
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<!-- This is just a test page -->
[[Category:Notice templates|DisambigMsg]]
d6fae1ce871035843e860abd2f50445bc38bd605
Trailmakers Wiki
0
45
311
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<!-- This is a responsive front page design that adapts to the available width
of the browser by showing content in 1, 2, or 3 columns.
This is done by dividing the main content of the page into four numbered sections.
When the window is narrow, as on low-res displays, the content is displayed in a
single column in order: 1, 2, 3, 4
When the window is medium, as on medium-res displays, there are two columns.
Section 1 and 2 are on top with 1 on the left and 2 on the right.
Sections 3 and 4 are on the bottom with 4 at the left and 3 at the right.
When the window is wide, as on high-res displays, there are three columns.
Sections 1 and 4 take up the left column, with section 1 on top.
Section 2 takes up the middle column.
Section 3 takes up the right column.
Or, visually...
Narrow Medium Wide
|1| |1| |2| |1| | | | |
[2| |4| |3| | | |2| |3|
|3| |4| | | | |
|4|
-->
<div id="mf-home" class="fpmain">
<div class="fpsection1"><!-- BEGIN SECTION 1 -->
{{:{{SITENAME}}/Section 1}}
</div><!--END SECTION 1-->
<div class="fpmidsections"><!--BEGIN LAYOUT WRAPPER FOR SECTIONS 2 and 3-->
<div class="fpsection2"><!-- BEGIN SECTION 2 -->
{{:{{SITENAME}}/Section 2}}
</div><!--END SECTION 2-->
<div class="fpsection3"><!-- BEGIN SECTION 3 -->
{{:{{SITENAME}}/Section 3}}
</div><!--END SECTION 3-->
</div><!--END LAYOUT WRAPPER FOR SECTIONS 2 and 3 -->
<div class="fpsection4"><!-- BEGIN SECTION 4 -->
{{:{{SITENAME}}/Section 4}}
</div><!--END SECTION 4-->
</div>
<div class="nomobile" style="text-align: right;"><small>Main page sections: [[/Section 1|1]] · [[/Section 2|2]] · [[/Section 3|3]] · [[/Section 4|4]]. Changes for the main page can be proposed [[{{SITENAME}}/editcopy|here]]. </small></div>
<metadesc>The comprehensive wiki resource for the game</metadesc>
[[Category:{{SITENAME}}| ]]
0cc2a36ffbfdbb261b09a06991ba54f2ab04609d
312
311
2017-11-02T19:01:06Z
Malvodion
4285
Protected "[[Trailmakers Wiki]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<!-- This is a responsive front page design that adapts to the available width
of the browser by showing content in 1, 2, or 3 columns.
This is done by dividing the main content of the page into four numbered sections.
When the window is narrow, as on low-res displays, the content is displayed in a
single column in order: 1, 2, 3, 4
When the window is medium, as on medium-res displays, there are two columns.
Section 1 and 2 are on top with 1 on the left and 2 on the right.
Sections 3 and 4 are on the bottom with 4 at the left and 3 at the right.
When the window is wide, as on high-res displays, there are three columns.
Sections 1 and 4 take up the left column, with section 1 on top.
Section 2 takes up the middle column.
Section 3 takes up the right column.
Or, visually...
Narrow Medium Wide
|1| |1| |2| |1| | | | |
[2| |4| |3| | | |2| |3|
|3| |4| | | | |
|4|
-->
<div id="mf-home" class="fpmain">
<div class="fpsection1"><!-- BEGIN SECTION 1 -->
{{:{{SITENAME}}/Section 1}}
</div><!--END SECTION 1-->
<div class="fpmidsections"><!--BEGIN LAYOUT WRAPPER FOR SECTIONS 2 and 3-->
<div class="fpsection2"><!-- BEGIN SECTION 2 -->
{{:{{SITENAME}}/Section 2}}
</div><!--END SECTION 2-->
<div class="fpsection3"><!-- BEGIN SECTION 3 -->
{{:{{SITENAME}}/Section 3}}
</div><!--END SECTION 3-->
</div><!--END LAYOUT WRAPPER FOR SECTIONS 2 and 3 -->
<div class="fpsection4"><!-- BEGIN SECTION 4 -->
{{:{{SITENAME}}/Section 4}}
</div><!--END SECTION 4-->
</div>
<div class="nomobile" style="text-align: right;"><small>Main page sections: [[/Section 1|1]] · [[/Section 2|2]] · [[/Section 3|3]] · [[/Section 4|4]]. Changes for the main page can be proposed [[{{SITENAME}}/editcopy|here]]. </small></div>
<metadesc>The comprehensive wiki resource for the game</metadesc>
[[Category:{{SITENAME}}| ]]
0cc2a36ffbfdbb261b09a06991ba54f2ab04609d
313
312
2017-11-04T04:42:07Z
Malvodion
4285
wikitext
text/x-wiki
<!-- TO EDIT MAIN PAGE CONTENT, see "Templates used on this page" below and edit:
* Trailmakers Wiki/Top section
* Trailmakers Wiki/Flex section
* Trailmakers Wiki/Bottom section
This is a basic responsive front page design that adapts to the available width of the browser by
rearranging the sections themselves as well as content within each section. When narrow, the three sections
line up vertically in a single column. When wide enough, the middle (flex) section is pulled out to become a
right column.
Much of the layout and appearance is determined through styles defined in these pages:
* MediaWiki:Hydradark.css (for the desktop view)
* MediaWiki:Mobile.css (for the mobile view)
-->
<div id="mf-home" class="fpcontent">
<div id="fptopsection"><!-- BEGIN TOP SECTION -->
{{:Trailmakers Wiki/Top section}}
</div><!--END TOP SECTION-->
<div id="fpflexsection"><!-- BEGIN FLEX SECTION -->
{{:Trailmakers Wiki/Flex section}}
</div><!--END FLEX OTHER SECTION-->
<div id="fpbottomsection"><!-- BEGIN BOTTOM SECTION -->
{{:Trailmakers Wiki/Bottom section}}
</div><!--END BOTTOM OTHER SECTION-->
</div>
<metadesc>The official community maintained wiki resource for Trailmakers!</metadesc>
<div class="nomobile" style="text-align: right; margin-right: 10px;"><small>Main page sections: [[Trailmakers Wiki/Top section|Top]] · [[Trailmakers Wiki/Flex section|Flex]] · [[Trailmakers Wiki/Bottom section|Bottom]]. Changes for the main page can be proposed [[Trailmakers Wiki/editcopy|here]]. </small></div>
[[Category:Trailmakers Wiki| ]]
175a638ea61c346ae358cd3133875cf2bc67e2b7
Trailmakers Wiki/Bottom section
0
46
316
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<div class="fpbox" id="fpwiki" style="text-align: center;"><div class="fplinks">
<div class="linkslabel">Help Wiki</div><!--
-->{{FP link|gphelp:Contents|General Help|size=wide}}<!--
-->{{FP link|gphelp:Getting Started|Getting Started|size=wide}}<!--
-->{{FP link|gphelp:Editing pages|Editing pages|size=wide}}<!--
-->{{FP link|gphelp:Starting a new page|New pages|size=wide}}<!--
-->{{FP link|gphelp:Moving a page|Moving pages|size=wide}}<!--
-->{{FP link|gphelp:Basic Images|Basic images|size=wide}}<!--
-->{{FP link|gphelp:Links|Links|size=wide}}<!--
--></div>
<div class="fplinks">
<div class="linkslabel">Community</div><!--
-->{{FP link|Special:UserLogin/signup|Register|size=wide}}<!--
-->{{FP link|Project:Community portal|How to help|size=wide}}<!--
--></div>
----
<div class="nomobile">
<div>To write a new article, just enter the article title in the box below or in the search box at the top of the page.</div>
<inputbox>
type=create
break=no
</inputbox>
----
<div style="text-align: left;">
* '''Adding content'''
** If you are unsure of what to do or how to create a page, search for a few articles on the same topic and see what they look like. You can always view the source code in a wiki and learn from what others have done.
** An edit doesn't have to be massive; if you feel you don't want to create whole articles, then just fixing spelling errors and broken links is enough.
</div>
</div>
</div><!--END Wiki box-->
<noinclude>[[Category:Front page sections]]</noinclude>
1cd920c99589042ccc1d56f888abc96baf378faf
317
316
2017-11-04T04:43:41Z
Malvodion
4285
Protected "[[Trailmakers Wiki/Bottom section]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<div class="fpbox" id="fpwiki" style="text-align: center;"><div class="fplinks">
<div class="linkslabel">Help Wiki</div><!--
-->{{FP link|gphelp:Contents|General Help|size=wide}}<!--
-->{{FP link|gphelp:Getting Started|Getting Started|size=wide}}<!--
-->{{FP link|gphelp:Editing pages|Editing pages|size=wide}}<!--
-->{{FP link|gphelp:Starting a new page|New pages|size=wide}}<!--
-->{{FP link|gphelp:Moving a page|Moving pages|size=wide}}<!--
-->{{FP link|gphelp:Basic Images|Basic images|size=wide}}<!--
-->{{FP link|gphelp:Links|Links|size=wide}}<!--
--></div>
<div class="fplinks">
<div class="linkslabel">Community</div><!--
-->{{FP link|Special:UserLogin/signup|Register|size=wide}}<!--
-->{{FP link|Project:Community portal|How to help|size=wide}}<!--
--></div>
----
<div class="nomobile">
<div>To write a new article, just enter the article title in the box below or in the search box at the top of the page.</div>
<inputbox>
type=create
break=no
</inputbox>
----
<div style="text-align: left;">
* '''Adding content'''
** If you are unsure of what to do or how to create a page, search for a few articles on the same topic and see what they look like. You can always view the source code in a wiki and learn from what others have done.
** An edit doesn't have to be massive; if you feel you don't want to create whole articles, then just fixing spelling errors and broken links is enough.
</div>
</div>
</div><!--END Wiki box-->
<noinclude>[[Category:Front page sections]]</noinclude>
1cd920c99589042ccc1d56f888abc96baf378faf
Trailmakers Wiki/Flex section
0
47
320
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Guides box-->
<div class="heading">Guides</div>
* Create a [[How to play guide for {{gamename}}]]
</div><!--END Guides box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Videos box-->
<div class="heading">Videos</div>
<div class="fpvideos">
<div class="fpvideo">{{#ev:twitchvod|v146686933|480||||autoplay=false}}</div>
</div>
</div><!--END Videos box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Images box-->
<div class="heading">Featured images</div>
{{Featured images}}
</div><!--END Images box-->
<div class="fpbox" id="fplinks" style="text-align: center;"><!-- BEGIN Links box-->
<div class="heading">''{{Gamename}}'' Links</div>
<div class="fplinks"><!--
-->{{FP link|url=https://www.gamepedia.com|Official page|size=wide}}<!--
-->{{FP link|url=http://www.gamepedia.com|Publisher|size=wide}}<!--
--></div>
</div><!--END Links box-->
<noinclude>[[Category:Front page sections]]</noinclude>
e5e92b0840364e147dd0c71a4ccdf731c53b7b48
321
320
2017-11-04T04:43:44Z
Malvodion
4285
Protected "[[Trailmakers Wiki/Flex section]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Guides box-->
<div class="heading">Guides</div>
* Create a [[How to play guide for {{gamename}}]]
</div><!--END Guides box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Videos box-->
<div class="heading">Videos</div>
<div class="fpvideos">
<div class="fpvideo">{{#ev:twitchvod|v146686933|480||||autoplay=false}}</div>
</div>
</div><!--END Videos box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Images box-->
<div class="heading">Featured images</div>
{{Featured images}}
</div><!--END Images box-->
<div class="fpbox" id="fplinks" style="text-align: center;"><!-- BEGIN Links box-->
<div class="heading">''{{Gamename}}'' Links</div>
<div class="fplinks"><!--
-->{{FP link|url=https://www.gamepedia.com|Official page|size=wide}}<!--
-->{{FP link|url=http://www.gamepedia.com|Publisher|size=wide}}<!--
--></div>
</div><!--END Links box-->
<noinclude>[[Category:Front page sections]]</noinclude>
e5e92b0840364e147dd0c71a4ccdf731c53b7b48
322
321
2017-11-07T08:56:36Z
Malvodion
4285
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Guides box-->
<div class="heading">Guides</div>
*[[How to play guide for Trailmakers]]
</div><!--END Guides box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Videos box-->
<div class="heading">Videos</div>
<div class="fpvideos">
<div class="fpvideo">{{#ev:youtube|4-c09USdvO4|500|center}}</div>
</div>
</div><!--END Videos box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Images box-->
<div class="heading">Featured images</div>
{{Featured images}}
</div><!--END Images box-->
<div class="fpbox" id="fplinks" style="text-align: center;"><!-- BEGIN Links box-->
<div class="heading">''Trailmakers'' Links</div>
<div class="fplinks"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
--></div>
</div><!--END Links box-->
<noinclude>[[Category:Front page sections]]</noinclude>
f87348aa990193d156f18e7245857c93ae11c6d7
323
322
2017-11-14T21:24:20Z
Malvodion
4285
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Guides box-->
<div class="heading">Guides</div>
*[[How to play guide for Trailmakers]]
</div><!--END Guides box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Videos box-->
<div class="heading">Videos</div>
<div class="fpvideos">
<div class="fpvideo">{{#ev:twitchvod|v188417911|500|center|||autoplay=false}}</div>
</div>
</div><!--END Videos box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Images box-->
<div class="heading">Featured images</div>
{{Featured images}}
</div><!--END Images box-->
<div class="fpbox" id="fplinks" style="text-align: center;"><!-- BEGIN Links box-->
<div class="heading">''Trailmakers'' Links</div>
<div class="fplinks"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
--></div>
</div><!--END Links box-->
<noinclude>[[Category:Front page sections]]</noinclude>
26ad3b11ea94a74e6e362ea3c76b660009139564
324
323
2017-12-19T00:22:51Z
Malvodion
4285
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Guides box-->
<div class="heading">Guides</div>
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
</div><!--END Guides box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Videos box-->
<div class="heading">Videos</div>
<div class="fpvideos">
<div class="fpvideo">{{#ev:twitchvod|v188417911|500|center|||autoplay=false}}</div>
</div>
</div><!--END Videos box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Images box-->
<div class="heading">Featured images</div>
{{Featured images}}
</div><!--END Images box-->
<div class="fpbox" id="fplinks" style="text-align: center;"><!-- BEGIN Links box-->
<div class="heading">''Trailmakers'' Links</div>
<div class="fplinks"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
--></div>
</div><!--END Links box-->
<noinclude>[[Category:Front page sections]]</noinclude>
59d7a65988376592b8413aa5e46ec31e94df2d71
325
324
2018-03-08T19:28:44Z
Kronogenics
397964
Added Discord link
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Guides box-->
<div class="heading">Guides</div>
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
</div><!--END Guides box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Videos box-->
<div class="heading">Videos</div>
<div class="fpvideos">
<div class="fpvideo">{{#ev:twitchvod|v188417911|500|center|||autoplay=false}}</div>
</div>
</div><!--END Videos box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Images box-->
<div class="heading">Featured images</div>
{{Featured images}}
</div><!--END Images box-->
<div class="fpbox" id="fplinks" style="text-align: center;"><!-- BEGIN Links box-->
<div class="heading">''Trailmakers'' Links</div>
<div class="fplinks">{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div>
</div><!--END Links box-->
<noinclude>[[Category:Front page sections]]</noinclude>
5d06e5d34b2b6c2ffdda23b1febde75a4251f18f
Trailmakers Wiki/Top section
0
48
329
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Welcome box-->
<div class="welcome">Welcome to ''{{Gamename}}'' Wiki</div>
<div>the ''{{Gamename}}'' guide for [[Keyword1]], [[Keyword2]], [[Keyword3]] and more written and maintained by the players.</div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].
Please feel free to contribute by creating new articles or expanding existing ones.
</div><!--END Welcome box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Description box-->
<div class="heading">About {{Gamename}}</div>
<div style="text-align: left;">
Add a description of the game which covers topics of interest and has links.
</div>
</div><!--END Description box-->
<div class="fpbox" id="fproles" style="text-align: center;"><!-- BEGIN Content box-->
<div class="heading">Content </div>
<div class="fplinks"><!--
-->{{FP link|Keyword 1}}<!--
-->{{FP link|Keyword 2}}<!--
-->{{FP link|Keyword 3}}<!--
-->{{FP link|Keyword 4}}<!--
--></div>
</div><!-- END Heading A box-->
<div class="fpbox" id="fpsubjects" style="text-align: center;"><!-- BEGIN Heading B box-->
<div class="heading">Heading B</div>
<div class="fplinks"><!--
-->{{FP link|Heading B item 1|Display 1}}<!--
-->{{FP link|Heading B item 2|Display 2}}<!--
-->{{FP link|Heading B item 3|Display 3}}<!--
--></div>
</div><!-- END Heading B box-->
<noinclude>[[Category:Front page sections]]</noinclude>
1aebed36f206c475a1348758d9011ec203f58500
330
329
2017-11-04T04:43:39Z
Malvodion
4285
Protected "[[Trailmakers Wiki/Top section]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Welcome box-->
<div class="welcome">Welcome to ''{{Gamename}}'' Wiki</div>
<div>the ''{{Gamename}}'' guide for [[Keyword1]], [[Keyword2]], [[Keyword3]] and more written and maintained by the players.</div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].
Please feel free to contribute by creating new articles or expanding existing ones.
</div><!--END Welcome box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Description box-->
<div class="heading">About {{Gamename}}</div>
<div style="text-align: left;">
Add a description of the game which covers topics of interest and has links.
</div>
</div><!--END Description box-->
<div class="fpbox" id="fproles" style="text-align: center;"><!-- BEGIN Content box-->
<div class="heading">Content </div>
<div class="fplinks"><!--
-->{{FP link|Keyword 1}}<!--
-->{{FP link|Keyword 2}}<!--
-->{{FP link|Keyword 3}}<!--
-->{{FP link|Keyword 4}}<!--
--></div>
</div><!-- END Heading A box-->
<div class="fpbox" id="fpsubjects" style="text-align: center;"><!-- BEGIN Heading B box-->
<div class="heading">Heading B</div>
<div class="fplinks"><!--
-->{{FP link|Heading B item 1|Display 1}}<!--
-->{{FP link|Heading B item 2|Display 2}}<!--
-->{{FP link|Heading B item 3|Display 3}}<!--
--></div>
</div><!-- END Heading B box-->
<noinclude>[[Category:Front page sections]]</noinclude>
1aebed36f206c475a1348758d9011ec203f58500
331
330
2017-11-07T09:22:55Z
Malvodion
4285
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Welcome box-->
<div class="welcome">Welcome to the Official [[File:TrailmakersLogo.png|150px|link=|Trailmakers]] Wiki!</div>
<div>the ''Trailmakers'' guide written and maintained by the community.</div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].
Please feel free to contribute by creating new articles or expanding existing ones.
</div><!--END Welcome box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Description box-->
<div class="heading">About Trailmakers</div>
<div style="text-align: left;">
[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
</div>
</div><!--END Description box-->
<div class="fpbox" id="fproles" style="text-align: center;"><!-- BEGIN Content box-->
<div class="heading">Quick Links</div>
<div class="fplinks"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div>
</div><!-- END Heading A box-->
<noinclude>[[Category:Front page sections]]</noinclude>
3f1d6f9674c75b119e3585bf59fdb6ae0822d688
332
331
2017-12-19T00:23:50Z
Malvodion
4285
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Welcome box-->
<div class="welcome">Welcome to the Official [[File:TrailmakersLogo.png|150px|link=|Trailmakers]] Wiki!</div>
<div>the ''Trailmakers'' guide written and maintained by the community.</div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].
Please feel free to contribute by creating new articles or expanding existing ones.
</div><!--END Welcome box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Description box-->
<div class="heading">About Trailmakers</div>
<div style="text-align: left;">
[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers is scheduled to go into Early Access on Steam in January 31st, 2018.
</div>
</div><!--END Description box-->
<div class="fpbox" id="fproles" style="text-align: center;"><!-- BEGIN Content box-->
<div class="heading">Quick Links</div>
<div class="fplinks"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div>
</div><!-- END Heading A box-->
<noinclude>[[Category:Front page sections]]</noinclude>
c3bd6cbd0ce56a6acfe5ff1297c4ad452f30d978
333
332
2018-03-08T19:31:57Z
Kronogenics
397964
Removed scheduled release date
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Welcome box-->
<div class="welcome">Welcome to the Official [[File:TrailmakersLogo.png|150px|link=|Trailmakers]] Wiki!</div>
<div>the ''Trailmakers'' guide written and maintained by the community.</div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].
Please feel free to contribute by creating new articles or expanding existing ones.
</div><!--END Welcome box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Description box-->
<div class="heading">About Trailmakers</div>
<div style="text-align: left;">
[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
</div>
</div><!--END Description box-->
<div class="fpbox" id="fproles" style="text-align: center;"><!-- BEGIN Content box-->
<div class="heading">Quick Links</div>
<div class="fplinks"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div>
</div><!-- END Heading A box-->
<noinclude>[[Category:Front page sections]]</noinclude>
3f1d6f9674c75b119e3585bf59fdb6ae0822d688
Template:=
10
51
346
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<includeonly>=</includeonly><noinclude>
{{doc}}
[[Category:Formatting templates|{{PAGENAME}}]]<noinclude>
99eb3f6a79bae72aba5c833f64355bcaab9955ea
Template:Tlx
10
52
348
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<includeonly><code><nowiki>{{</nowiki>{{#if:{{{subst|}}}|[[wikipedia:Help:Substitution|subst]]:}}[[{{{LANG|}}}{{{SISTER|}}}{{ns:Template}}:{{{1|}}}|{{{1|}}}]]<!--
-->{{#if:{{{2|}}}|
|{{{2}}}
}}<!--
-->{{#if:{{{3|}}}|
|{{{3}}}
}}<!--
-->{{#if:{{{4|}}}|
|{{{4}}}
}}<!--
-->{{#if:{{{5|}}}|
|{{{5}}}
}}<!--
-->{{#if:{{{6|}}}|
|{{{6}}}
}}<!--
-->{{#if:{{{7|}}}|
|{{{7}}}
}}<!--
-->{{#if:{{{8|}}}|
|{{{8}}}
}}<!--
-->{{#if:{{{9|}}}|
|{{{9}}}
}}<!--
-->{{#if:{{{10|}}}|
|{{{10}}}
}}<!--
-->{{#if:{{{11|}}}|
|{{{11}}}
}}<!--
-->{{#if:{{{12|}}}|
|''...''
}}<nowiki>}}</nowiki></code></includeonly><noinclude>{{doc}}[[Category:Formatting templates]]</noinclude>
512f88acf594469a9b72d004b8d82ec05ac8941c
Template:Featured images
10
53
350
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<includeonly><center><slideboxlightshow halign="center" width="250" height="150">
File:GP_Nova.png
File:Prof_hydra.png
File:Curse col.png
File:Curse hydra.png
File:Hydra intro 2.png
File:Nova wrench.png
File:Nova.png
</slideboxlightshow></center></includeonly><noinclude>{{doc}}[[Category:Templates]]</noinclude>
3a491f1f658fa184d5fc7a2e88d0fa5f77d9d883
351
350
2017-11-07T08:53:50Z
Malvodion
4285
wikitext
text/x-wiki
<includeonly><center><slideboxlightshow halign="center" width="400" height="250">
File:BUILD-e1501145530202.jpg
File:DANGER-e1501145493999.jpg
File:MULTIPLAYER-e1501145470328.jpg
File:EXPLORE-e1501145369502.jpg
File:CREATIVITY-e1501145511200.jpg
</slideboxlightshow></center></includeonly><noinclude>{{doc}}[[Category:Templates]]</noinclude>
d2a941ad0eca9fc41548c58d299fa3f28e973c75
Template:FP link
10
54
353
2017-11-02T17:27:11Z
Maintenance script-gpuser
16641
⧼default import⧽
wikitext
text/x-wiki
<onlyinclude><includeonly><div class="fplink plainlinks {{#if:{{{image|}}}|image|}} {{#switch:{{lc:{{{size|}}} }}|wide={{lc:{{{size|}}} }} }}"><div class="box"><div class="row"><div class="cell">{{#if:{{{image|}}}
|<div class="image">{{#if:{{{url|}}}
|
|{{#ifexist:File:{{{image|}}}|[[File:{{{image|}}}|link={{{1|}}}]]|<span class="nomobile">[[File:{{{image|}}}|Please upload 150x150 image]]</span>}}
}}</div>
|}}<div class="link">{{#if:{{{url|}}}
|{{#if:{{{1|}}}|[{{{url}}} {{{1}}}]|[{{{url}}}]}}
|{{#if:{{{1|}}}|{{#if:{{{2|}}}|[[{{{1}}}|{{{2}}}]]|[[{{{1}}}]]|}}}}
}}</div></div></div></div></div></includeonly></onlyinclude>{{doc}}
[[Category:Formatting templates]]
d0ff6f96f0db5b51c3462feddeefc760ff3c3256
How to play guide for Trailmakers
0
23
133
2017-11-07T08:47:59Z
Malvodion
4285
Created page with "This is a '''How to Play Guide for [[Trailmakers]]'''. Feel free to expand upon it. ==Basic gameplay== ===Controls=== [[Category:Trailmakers]]"
wikitext
text/x-wiki
This is a '''How to Play Guide for [[Trailmakers]]'''. Feel free to expand upon it.
==Basic gameplay==
===Controls===
[[Category:Trailmakers]]
b74ae5b94feb9f29b4e1b855dfe444c8d9a33023
134
133
2017-12-19T00:15:38Z
Malvodion
4285
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic gameplay==
==Controls==
==Tips and tricks==
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
f2c62c285ae17f71f471727132c87f009721c41b
135
134
2018-01-04T16:35:57Z
Cheetah 12
397967
/* Basic gameplay */
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic gameplay==
==Controls==
The Controls are simple. You can use the mainstream wasd, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press b, and the same to get out.
==Tips and tricks==
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
d9d82f669c54448789d51039852729224439c173
136
135
2018-03-08T16:36:21Z
Malvodion
4285
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic gameplay==
==Controls==
The Controls are simple. You can use the mainstream wasd, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press b, and the same to get out.
==Tips and tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Psudo-weight (downforce (spoilers))
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy then their less traction based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal) this is due to how they are evaluated by the physics engine
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
12729c77d2f46212a485a7e1c7e3497d0dde861e
Trailmakers
0
44
290
2017-11-07T09:10:07Z
Malvodion
4285
Created page with "[[File:TrailmakersLogo.png|link=]] '''Trailmakers''' is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate ca..."
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
[[Category:Trailmakers Wiki]]
8cc4e9932e9482b805a6a605a53c3daa7ff6129f
291
290
2017-12-19T00:23:55Z
Malvodion
4285
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers is scheduled to go into Early Access on Steam in January 31st, 2018.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
[[Category:Trailmakers Wiki]]
b3bfe739008eb4f4bf26e4bd51768799e4f2adb1
292
291
2018-03-08T19:34:24Z
Kronogenics
397964
Added discord to official links.
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers is scheduled to go into Early Access on Steam in January 31st, 2018.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[https://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
b040eee1e15dbefd1f0a3f42ecf9c31546d0da34
Blocks
0
6
6
2017-11-07T09:17:45Z
Malvodion
4285
Created page with "{{Stub}} '''Blocks''' are the main materials in [[Trailmakers]]. Everything you build is made from physical building blocks. Each block has unique features like shape, weigh..."
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
[[Category:Trailmakers]]
ddc0062ce613ebe6248394d674d17e03b8f74eab
7
6
2017-11-07T09:21:27Z
Malvodion
4285
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
[[Category:Trailmakers]]
380e33b79c059198c4803b2a6738bbaeda3f5232
Building
0
15
69
2017-11-07T09:18:53Z
Malvodion
4285
Created page with "{{Stub}} '''Blocks''' are the main materials in [[Trailmakers]]. The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constr..."
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
[[Category:Trailmakers]]
19612945c65fd5bc7297b140c9ed118853dac1ef
70
69
2017-11-07T09:21:59Z
Malvodion
4285
wikitext
text/x-wiki
{{Stub}}
'''Building''' is a core aspect of [[Trailmakers]].
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
[[Category:Trailmakers]]
06a1a829cc3f053b6b6c6d83012fe879d98faf2a
71
70
2018-03-08T16:33:55Z
Malvodion
4285
wikitext
text/x-wiki
{{Stub}}
'''Building''' is a core aspect of [[Trailmakers]].
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
==Blueprints==
Blueprints are saved built creations in Trailmakers, and are the key way of sharing vehicles. Blueprints are manifested as .PNG files, with the vehicle data encoded into them.
For more detailed information about this, please visit its main article: [[Blueprints]]
[[Category:Trailmakers]]
dfb0777b9d58df29dab5afd9f80b01110b9349ee
Biomes
0
13
56
2017-11-07T09:19:33Z
Malvodion
4285
Created page with "{{Stub}} '''Biomes''' are the different regions in [[Trailmakers]]. Trailmakers is set in a big world with different environments that require you to continuously adjust and..."
wikitext
text/x-wiki
{{Stub}}
'''Biomes''' are the different regions in [[Trailmakers]].
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
[[Category:Trailmakers]]
e3b222d9e8918e6288a6a5add5e7281c756ef9c9
Game Modes
0
20
102
2017-11-07T09:22:23Z
Malvodion
4285
Created page with "{{Stub}} '''Game Modes''' are the different ways that [[Trailmakers]] can be played. ==Expedition== In Expedition Mode, the goal is to journey into the unknown, and get as f..."
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Expedition==
In Expedition Mode, the goal is to journey into the unknown, and get as far as you can. You start in an abandoned world with a few building blocks. Build, adjust and rebuild your vehicle. Traverse a BIG world, overcome deep gorges, angry wildlife and all kinds of weather to progress and find new parts that will juice up your rig. The world in Expedition Mode will test your survival skills and ingenuity. With the checkpoint in sight but no wheels and no wings, how do you and your four jet engines get across the canyon?
==Creative==
Creative Mode is an unrestricted, sandbox, vehicle-building experience where you can build anything you can dream of and play around with it in the world of Trailmakers. It is a great place to test out crazy machines, and experiment with Trailmaker engineering. With tons of different blocks, hinges, thrusters and interactive vehicle parts - the sky's the limit!
[[Category:Trailmakers]]
c35ce9f572c3bb12b1057cb1b65af45a4b82e792
103
102
2018-01-04T16:47:23Z
Cheetah 12
397967
/* Multi-player */
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Expedition==
In Expedition Mode, the goal is to journey into the unknown, and get as far as you can. You start in an abandoned world with a few building blocks. Build, adjust and rebuild your vehicle. Traverse a BIG world, overcome deep gorges, angry wildlife and all kinds of weather to progress and find new parts that will juice up your rig. The world in Expedition Mode will test your survival skills and ingenuity. With the checkpoint in sight but no wheels and no wings, how do you and your four jet engines get across the canyon?
==Creative==
Creative Mode is an unrestricted, sandbox, vehicle-building experience where you can build anything you can dream of and play around with it in the world of Trailmakers. It is a great place to test out crazy machines, and experiment with Trailmaker engineering. With tons of different blocks, hinges, thrusters and interactive vehicle parts - the sky's the limit!
== Multi-player ==
There are two modes in Multi-player. The first is Sandbox mode, and the next is the PvP mode. When customizing the server, you have loads of options.
==== Sandbox ====
This mode allows the server to have unlimited power cores, which in turn, means you can have as many engines as you want.
==== PvP ====
[[Category:Trailmakers]]
[[Category:Game Modes|https://trailmakers.gamepedia.com/Game_Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
e2129c21885db9dc9acb7baa9ca41563d1c5c535
104
103
2018-01-05T16:11:33Z
Cheetah 12
397967
Multi-Player
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Expedition==
In Expedition Mode, the goal is to journey into the unknown, and get as far as you can. You start in an abandoned world with a few building blocks. Build, adjust and rebuild your vehicle. Traverse a BIG world, overcome deep gorges, angry wildlife and all kinds of weather to progress and find new parts that will juice up your rig. The world in Expedition Mode will test your survival skills and ingenuity. With the checkpoint in sight but no wheels and no wings, how do you and your four jet engines get across the canyon?
==Creative==
Creative Mode is an unrestricted, sandbox, vehicle-building experience where you can build anything you can dream of and play around with it in the world of Trailmakers. It is a great place to test out crazy machines, and experiment with Trailmaker engineering. With tons of different blocks, hinges, thrusters and interactive vehicle parts - the sky's the limit!
== Multi-player ==
There are two modes in Multi-player. The first is Sandbox mode, and the next is the PvP mode. When customizing the server, you have loads of options. There are two different maps at this point. The first one
==== Sandbox ====
This mode allows the server to have unlimited power cores, and the ability to build whatever you want. Just be careful how big your creations are because the bigger they are the laggier the game is.
==== PvP ====
PvP is the place where you get to test out your creations. You can battle others in the fight for time and the specter bolt. The person who holds the bolt the longest wins.
[[Category:Trailmakers]]
[[Category:Game Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
0c87baf4292daa8b6f05add163fa2075ea955bd5
System requirements
0
40
254
2017-12-19T00:18:35Z
Malvodion
4285
Created page with "{{Stub}} The following are the minimum and recommended '''system requirements''' for [[Trailmakers]]. While these requirements do not represent a guaranteed working configurat..."
wikitext
text/x-wiki
{{Stub}}
The following are the minimum and recommended '''system requirements''' for [[Trailmakers]]. While these requirements do not represent a guaranteed working configuration, meeting the minimum requirements should ensure at least a launch-able environment.
==Recommended requirements==
==Minimum requirements==
*'''OS:''' Windows 7 64 Bit
*'''Processor:''' i5-4440 (3.1 GHz quad-core)
*'''Memory:''' 8 GB RAM
*'''Graphics:''' GTX 660
*'''DirectX:''' Version 11
*'''Network:''' Broadband Internet connection
*'''Storage:''' 5 GB available space
==See also==
* [[How to play guide for Trailmakers]]
* [[Release date]]
[[Category:Guides]]
5327c3d784e4b997374d26762ef518045848706f
Release date
0
36
232
2017-12-19T00:22:02Z
Malvodion
4285
Created page with "{{Stub}} This page contains the '''release date''' information for [[Trailmakers]]. ==Release date== Trailmakers is scheduled to go into Early Access on Steam in January 31st..."
wikitext
text/x-wiki
{{Stub}}
This page contains the '''release date''' information for [[Trailmakers]].
==Release date==
Trailmakers is scheduled to go into Early Access on Steam in January 31st, 2018.
==Release information==
The game will cost $20 at launch, with the price "being reviewed" when the Early Access period ends. Before Early Access there will be a free open beta weekend perid between January 11st and January 14th, 2018.
==See also==
* [[How to play guide for Trailmakers]]
* [[System requirements]]
[[Category:Guides]]
085bb815b80da7573b7edbfc54dc3849dcec65e1
233
232
2018-03-08T19:43:39Z
Kronogenics
397964
/* Release date */
wikitext
text/x-wiki
{{Stub}}
This page contains the '''release date''' information for [[Trailmakers]].
==Release date==
Trailmakers was released in early access on January 30, 2018.
==Release information==
The price of the release game will be reviewed and may be above the early access price.
==See also==
* [[How to play guide for Trailmakers]]
* [[System requirements]]
[[Category:Guides]]
4a02665d13d71e05e6e12ef37c601609b8835291
Blueprints
0
14
62
2018-03-07T19:42:15Z
Kronogenics
397964
Created page with "gg"
wikitext
text/x-wiki
gg
f3226f91f77a87d909b8920adc91f9a301a7316b
63
62
2018-03-07T19:50:11Z
Kronogenics
397964
I created basically the entire page
wikitext
text/x-wiki
Blueprints are saved Trailmakers creations, they are the key way of sharing vehicles. Blueprints are manifested as .PNG files, with the vehicle data encoded into them.
== Importing ==
If someone sends you a blueprint, they can be downloaded by:
Save the image to a known location > in Trailmakers go to the Blueprints section > click the import arrow (depicted as a box with an arrow entering it) > find the file you saved prior and click "open"
== Exporting ==
To export your blueprint and send it to someone else to import follow these steps:
In Trailmakers go to the blueprints section > hover over a saved vehicle > click the white box that appears above it (depicted as a box with an arrow leaving it) > save to a known location > send it to someone
fffffd3ed31f8545309511634ce7a06acf4b5aed
64
63
2018-03-08T16:32:36Z
Malvodion
4285
wikitext
text/x-wiki
'''Blueprints''' are saved [[Building|built creations]] in [[Trailmakers]], and are the key way of sharing vehicles. Blueprints are manifested as .PNG files, with the vehicle data encoded into them.
== Importing ==
If someone sends you a blueprint, they can be downloaded by:
:*Save the image to a known location >
:*In Trailmakers go to the Blueprints section >
:*Click the import arrow (depicted as a box with an arrow entering it) >
:*Find the file you saved prior and click "open".
== Exporting ==
To export your blueprint and send it to someone else to import follow these steps:
:*In Trailmakers go to the blueprints section >
:*Hover over a saved vehicle >
:*Click the white box that appears above it (depicted as a box with an arrow leaving it) >
:*Save to a known location >
:*Send it to someone.
[[Category:Building]]
99c2c1ee90e28e18cb3107a05af31707d8c02059
65
64
2018-03-08T19:53:18Z
Kronogenics
397964
Switched to numbers, removed arrows.
wikitext
text/x-wiki
'''Blueprints''' are saved [[Building|built creations]] in [[Trailmakers]], and are the key way of sharing vehicles. Blueprints are manifested as .PNG files, with the vehicle data encoded into them.
== Importing ==
If someone sends you a blueprint, they can be downloaded by:
:#Save the image to a known location
:#In Trailmakers go to the Blueprints section
:#Click the import arrow (depicted as a box with an arrow entering it)
:#Find the file you saved prior and click "open".
== Exporting ==
To export your blueprint and send it to someone else to import follow these steps:
:#In Trailmakers go to the blueprints section
:#Hover over a saved vehicle
:#Click the white box that appears above it (depicted as a box with an arrow leaving it)
:#Save to a known location
:#Send it to someone.
[[Category:Building]]
715377439ffd44bc0e3f4e0115f64a82e2f93bb1
66
65
2018-03-08T21:53:15Z
Malvodion
4285
wikitext
text/x-wiki
'''Blueprints''' are saved [[Building|built creations]] in [[Trailmakers]], and are the key way of sharing vehicles. Blueprints are manifested as .PNG files, with the vehicle data encoded into them.
== Importing ==
If someone sends you a blueprint, they can be downloaded by:
:#Save the image to a known location
:#In Trailmakers go to the Blueprints section
:#Click the import arrow (depicted as a box with an arrow entering it)
:#Find the file you saved prior and click "open"
== Exporting ==
To export your blueprint and send it to someone else to import follow these steps:
:#In Trailmakers go to the blueprints section
:#Hover over a saved vehicle
:#Click the white box that appears above it (depicted as a box with an arrow leaving it)
:#Save to a known location
:#Send it to someone
[[Category:Building]]
1bbb2f134db2956067bc05f2bca997df1f949097
Trailmakers
0
44
293
292
2018-03-08T21:54:39Z
Malvodion
4285
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[https://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
15fb1410d033872cf4873560e07925efbb5f0df8
294
293
2018-03-08T21:55:30Z
Malvodion
4285
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
c0c70c831840c5000f46a625610c0a94d27bcd81
295
294
2019-01-23T03:40:22Z
MannedTooth
9479
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
65d1c6f8fb4f86b91eb5cdc619feb80cf5a547b6
296
295
2019-10-24T17:13:58Z
5.111.152.176
0
/* External Links */
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018.
=='''Features'''==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
7f9a4a78c99520bc40b8f215c3285c3d972d4a78
297
296
2019-10-24T18:27:15Z
MannedTooth
9479
Undo revision 392 by [[Special:Contributions/5.111.152.176|5.111.152.176]] ([[User talk:5.111.152.176|talk]])
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
65d1c6f8fb4f86b91eb5cdc619feb80cf5a547b6
How to play guide for Trailmakers
0
23
137
136
2018-04-22T00:44:37Z
Nthjames
396105
Added basic gameplay section recommending the Expedition mode as a starting point.
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic gameplay==
The best way to get started is to enter the single player Expedition mode and begin your journey.
In Expedition mode you will be taught the basics of construction and gradually be challenged to solve navigation puzzles bu applying and expanding the principles you have been taught.
==Controls==
The Controls are simple. You can use the mainstream wasd, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press b, and the same to get out.
==Tips and tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Psudo-weight (downforce (spoilers))
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy then their less traction based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal) this is due to how they are evaluated by the physics engine
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
1aaaa56be1559c1dce62e0d403a5cbb0880d09e7
138
137
2018-04-22T00:45:22Z
Nthjames
396105
Typo correction
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic gameplay==
The best way to get started is to enter the single player Expedition mode and begin your journey.
In Expedition mode you will be taught the basics of construction and gradually be challenged to solve navigation puzzles by applying and expanding the principles you have been taught.
==Controls==
The Controls are simple. You can use the mainstream wasd, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press b, and the same to get out.
==Tips and tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Psudo-weight (downforce (spoilers))
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy then their less traction based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal) this is due to how they are evaluated by the physics engine
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
4923657240cbc3cb97c408a12ad4759cb02cca87
139
138
2018-11-01T01:32:11Z
50.5.169.115
0
/* Controls */
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic gameplay==
The best way to get started is to enter the single player Expedition mode and begin your journey.
In Expedition mode you will be taught the basics of construction and gradually be challenged to solve navigation puzzles by applying and expanding the principles you have been taught.
==Controls==
The Controls are simple. You can use the mainstream, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press b, and the same to get out.
==Tips and tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the frontooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooofffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
* General
*# Psudo-weight (downforce (spoilers))
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy then their less traction based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal) this is due to how they are evaluated by the physics engine
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
18749ebba346b34cf227d70e0228ccced8dea3bb
140
139
2018-11-20T05:39:48Z
175.32.77.77
0
/* Typo */
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic gameplay==
The best way to get started is to enter the single player Expedition mode and begin your journey.
In Expedition mode you will be taught the basics of construction and gradually be challenged to solve navigation puzzles by applying and expanding the principles you have been taught.
==Controls==
The Controls are simple. You can use the mainstream, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press b, and the same to get out.
==Tips and tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Psudo-weight (downforce (spoilers))
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy then their less traction based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal) this is due to how they are evaluated by the physics engine
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
e4e0a556420d3bdc4f3e7a5fa212653e23fe36c8
Blocks
0
6
8
7
2018-04-22T02:40:52Z
Nthjames
396105
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Basic Block Types==
==Engine Blocks==
==Mechanical Blocks==
==Aerodynamic Blocks==
[[Category:Trailmakers]]
ca7ad79af5ea0fa8a6926a09c18ea9fdb9de36c7
9
8
2018-04-22T02:50:57Z
Malvodion
4285
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
===Mechanical blocks===
===Aerodynamic blocks===
[[Category:Trailmakers]]
1449a7ad5eadac4a9a924a3f4ba232d497d14dd6
10
9
2018-04-22T18:22:32Z
Nthjames
396105
/* Engine blocks */Added rough content to Engine block types
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
This type of block provides power or thrust to your vehicle. Some types of engine blocks include:
*Engine Blocks
*Hover Blocks
*Thruster Blocks
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
===Aerodynamic blocks===
[[Category:Trailmakers]]
28fed546cc7a32310700017e06b6d6dc5611f542
11
10
2018-08-28T18:57:08Z
161.28.82.245
0
/* Block types */
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
This type of block provides power or thrust to your vehicle. Some types of engine blocks include:
*Engine Blocks
*Hover Blocks
*Thruster Blocks
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
===Aerodynamic blocks===
=== Logic Blocks ===
[[Category:Trailmakers]]
a3dce5ee2d6a8d3c1b4408cf8588289cb0ffbabc
12
11
2018-08-29T03:56:37Z
Rifthunter4
396106
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
This type of block provides power or thrust to your vehicle. Some types of engine blocks include:
*Engine Blocks
*Hover Blocks
*Thruster Blocks
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
Mechanical blocks can move to give functionality to a vehicle.
===Aerodynamic blocks===
Aerodynamic blocks allow air to pass around them more easily, resulting in higher top speeds.
=== Logic Blocks ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
022b8b1f668875d11ebffab34db2bb9a068f1a4b
13
12
2018-08-29T04:21:23Z
Rifthunter4
396106
/* Mechanical blocks */
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
This type of block provides power or thrust to your vehicle. Some types of engine blocks include:
*Engine Blocks
*Hover Blocks
*Thruster Blocks
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
[[Mechanical blocks]] can move to give functionality to a vehicle.
===Aerodynamic blocks===
Aerodynamic blocks allow air to pass around them more easily, resulting in higher top speeds.
=== Logic Blocks ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
1c1bcaf2616132d41d90be3eae59732d445bdfe5
14
13
2018-08-29T04:21:43Z
Rifthunter4
396106
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
This type of block provides power or thrust to your vehicle. Some types of engine blocks include:
*Engine Blocks
*Hover Blocks
*Thruster Blocks
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
[[Mechanical Blocks]] can move to give functionality to a vehicle.
===Aerodynamic blocks===
[[Aerodynamic Blocks]] allow air to pass around them more easily, resulting in higher top speeds.
=== Logic Blocks ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
56df69947dd5009f185979b2b66019dd25b6b9e7
15
14
2018-08-29T13:46:20Z
88.230.226.19
0
/* Engine blocks */
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
asdasdasdasdThis type of block provides power or thrust to your vehicle. Some types of engine blocks include:
*Engine Blocks
*Hover Blocks
*Thruster Blocks
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
[[Mechanical Blocks]] can move to give functionality to a vehicle.
===Aerodynamic blocks===
[[Aerodynamic Blocks]] allow air to pass around them more easily, resulting in higher top speeds.
=== Logic Blocks ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
123831ccb24a3fde8c587dad741e37961d7fdc7b
16
15
2018-08-29T15:10:03Z
178.133.14.106
0
/* Engine blocks */Fixed typo,removed error
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
This type of block provides power or thrust to your vehicle. Some types of engine blocks include:
*Engine Blocks
*Hover Blocks
*Thruster Blocks
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
[[Mechanical Blocks]] can move to give functionality to a vehicle.
===Aerodynamic blocks===
[[Aerodynamic Blocks]] allow air to pass around them more easily, resulting in higher top speeds.
=== Logic Blocks ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
56df69947dd5009f185979b2b66019dd25b6b9e7
17
16
2018-09-25T03:20:44Z
TheWaffleDimension
396107
/* Engine blocks */ Linked to Thruster Blocks page.
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
This type of block provides power or thrust to your vehicle. Some types of engine blocks include:
*Engine Blocks
*Hover Blocks
*[[Thruster Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
[[Mechanical Blocks]] can move to give functionality to a vehicle.
===Aerodynamic blocks===
[[Aerodynamic Blocks]] allow air to pass around them more easily, resulting in higher top speeds.
=== Logic Blocks ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
37c5d8206aad97b0657478357db3e67ca702b46f
Template:Doc/end
10
163
650
2018-06-07T20:56:34Z
TheSatanicSanta
27263
move template documentation styles into stylesheet instead of inline css
wikitext
text/x-wiki
<includeonly></div>
<div class="doc-footer"><!--
-->{{#ifeq: {{SUBPAGENAME}} | doc |<!--
--><p style="margin: 0">This is the documentation page, it should be transcluded into the main template page. See [[Template:Doc]] for more information.</p>[[Category:Template documentation|{{BASEPAGENAME}}]] |<!--
--><p class="plainlinks" style="margin: 0">The above documentation is transcluded from [[{{FULLPAGENAME}}/doc]]. <small>([{{fullurl:{{FULLPAGENAME}}/doc|action=edit}} edit] | [{{fullurl:{{FULLPAGENAME}}/doc|action=history}} history])</small></p> }}<!--
--></div></includeonly><noinclude>[[Category:Documentation templates| {{PAGENAME}}]]</noinclude>
5901ae94ecaa54ca3b42da5f7715eb719863acd6
Template:Doc
10
90
648
2018-06-09T23:02:51Z
Mr Pie 5
2833
<br> -> <br/>
wikitext
text/x-wiki
<noinclude>{{doc/start}}
To use, create a sub-page from the template called '''doc''', put {{tl|doc/start}} at the start of your documentation, and {{tl|doc/end}} at the end.
Go back to your main template page and put <noinclude>{{tl|doc}}</noinclude> on a newline after the end of the template. /doc pages will automatically be added to [[:Category:Template documentation]].
== Optional parameters ==
=== clear ===
If your main template page has floating content and you would like to stop it going over the documentation, put {{tlx|doc/start|clear}} instead of {{tl|doc/start}} on your documentation page.<br/>
This is also useful for templates not using <includeonly>, as it will put some space between the template and the documentation box.
=== nodoc=1 ===
If a template has no documentation and you don't know how to use it, put {{tlx|doc/start|nodoc{{=}}1}} (or if the template needs clear as well, {{tlx|doc/start|clear|nodoc{{=}}1}}) instead of {{tl|doc/start}} on your documentation page.<br/>
The documentation's background will become red to make it more noticeable, and the page will be added to [[:Category:Templates with no documentation]].
=== baddoc=1 ===
Similar to nodoc, this is used to mark templates that '''do''' have documentation, but it isn't very good. This can mean it doesn't have enough examples, doesn't explain all the functions properly, or doesn't explain the point of the template properly.<br/>
The documentation's background will become yellow to make it more noticeable, and the page will be added to [[:Category:Templates with bad documentation]].
If both nodoc and baddoc are specified, baddoc will be ignored.
</div>
[[Category:Documentation templates| ]]
</noinclude><includeonly>{{/doc}}</includeonly>
8ca6cc9837f46dbba5212fef961ef5577203a3e7
Template:Doc/start
10
164
652
2018-06-15T18:59:03Z
Game widow
710
wikitext
text/x-wiki
<includeonly><!--
-->{{#vardefine: nodoc | {{{nodoc}}} }}<!--
-->{{#vardefine: baddoc | {{{baddoc}}} }}<!--
-->{{#if: {{{1|}}} | {{#ifeq: {{SUBPAGENAME}} | doc | | <div style="height: 1em; clear: both; margin-top: 5px;"></div> }} }}<!--
--><div class="doc">
<div class="doc-header"><!--
-->[[File:Template-{{#if: {{{nodoc|}}} | no | {{#if: {{{baddoc|}}} | bad }} }}info.png|50px|bottom|link=]] <span style="font-weight: bold; font-size: 125%;">Documentation</span><!--
--><div class="plainlinks" style="float: right; margin-left: 5px">[[{{fullurl:{{FULLPAGENAME}}|action=purge}} purge]]</div></div><!--
-->{{#if: {{{nodoc|}}} | '''This template has no documentation. If you know how to use this template, please add some.'''<!--
-->{{#ifeq: {{SUBPAGENAME}} | doc | | [[Category:Templates with no documentation|{{BASEPAGENAME}}]]}} |<!--
-->{{#if: {{{baddoc|}}} | '''This template's documentation has been marked as bad. Please improve or add to it.'''<!--
-->{{#ifeq: {{SUBPAGENAME}} | doc | | [[Category:Templates with bad documentation|{{BASEPAGENAME}}]]}}<!--
-->}} }}</includeonly><noinclude>[[Category:Documentation templates| {{PAGENAME}}]]</noinclude>
109c2325259817970f752e7c6d44c7d91164d6c5
Logic Blocks
0
27
161
2018-08-28T19:04:45Z
Rifthunter4
396106
Created page with "== Overview == Logic Blocks are 1x1x2 sized blocks that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol repr..."
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles.
== How Logic Gates Work ==
There are 3 types of logic blocks in the game:
* AND
* OR
* XOR
Logic Gates function by taking in a number of inputs and providing an output based on the inputs it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs.
cc68ee360f9e1882030df85be7d1679e64527faa
162
161
2018-08-28T19:18:49Z
Rifthunter4
396106
/* Overview */
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles.
== How Logic Gates Work ==
There are 3 types of logic blocks in the game:
* AND
* OR
* XOR
Logic Gates function by taking in a number of inputs and providing an output based on the inputs it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
==== AND Gate ====
The AND Gate takes a number of inputs and only places a Green value on its output if all of the inputs are not 0.
==== OR Gate ====
The OR Gate takes a number of inputs and will place a Green value on its output if any of the inputs are not 0.
==== XOR Gate ====
The XOR Gate takes a number of inputs and will place a Green value on its output if each input has a unique value.
==== Connecting Inputs and Outputs ====
To connect a block to a logic block as an input, the logic block must be enabled in that block's settings. This will link the output from that block to the logic block. To connect a logic block's output to another block, go to the logic block's settings and enable the check box for that block.
077b1f77ba6c416afb645bbd2bfb0a342522223f
163
162
2018-08-29T04:18:09Z
Rifthunter4
396106
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles.
== How Logic Gates Work ==
There are 4 types of logic blocks in the game:
* AND Gate
* OR Gate
* XOR Gate
* Distance Sensor
Logic Gates work by providing an output based on the input it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
==== AND Gate ====
The AND Gate only produces its output if all of the inputs are not zero.
Example: The AND Gate with two inputs receives a 1 and a 0. Because only one of the inputs is a 1, the AND Gate will not send its output. When it receives a 1 and a 1, it will send its output to whatever blocks that are marked to receive it.
==== OR Gate ====
The OR Gate only produces its output if any of it inputs are not zero.
Example: An OR Gate with 3 inputs receives a 1, 1, and 0. Because one of the inputs sends a 1, the OR Gate will send its output. If all of the inputs were 0, it would not send any output.
==== XOR Gate ====
The XOR Gate only produces output if exactly one input is not zero.
Example: An XOR Gate with 3 inputs receives a 1, 1, and 0. Unlike the OR Gate, the XOR Gate will not send its output because the more than a single input is a 1. If the inputs were 0, 0, and 1, the XOR Gate would send its output.
==== Distance Sensor ====
The Distance Sensor send output when the distance between the sensing side of the block and another block or object come within a set distance.
==== Connecting Inputs and Outputs ====
Logic Blocks can be connected to any other block that can be controlled with input, including other Logic Blocks. To have a Logic Block control another block, Click the gear icon on the logic block and click the check box on the block that you would like it to control.
== Tips ==
* A single Logic Block control multiple blocks at a time. If your vehicle has a lot of [[Mechanical Blocks]] to control at once, you can set them to be controlled by a single logic block instead to avoid needing to modify the controls and timing of each block.
3bd89970e13397e7708449cb8a245d869e430313
164
163
2018-08-29T04:25:01Z
Rifthunter4
396106
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles.
== How Logic Gates Work ==
There are 4 types of logic blocks in the game:
* AND Gate
* OR Gate
* XOR Gate
* Distance Sensor
Logic Gates work by providing an output based on the input it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
==== AND Gate ====
* The AND Gate only produces its output if all of the inputs are not zero.
* Example: The AND Gate with two inputs receives a 1 and a 0. Because only one of the inputs is a 1, the AND Gate will not send its output. When it receives a 1 and a 1, it will send its output to whatever blocks that are marked to receive it.
==== OR Gate ====
* The OR Gate only produces its output if any of it inputs are not zero.
* Example: An OR Gate with 3 inputs receives a 1, 1, and 0. Because one of the inputs sends a 1, the OR Gate will send its output. If all of the inputs were 0, it would not send any output.
==== XOR Gate ====
* The XOR Gate only produces output if exactly one input is not zero.
* Example: An XOR Gate with 3 inputs receives a 1, 1, and 0. Unlike the OR Gate, the XOR Gate will not send its output because the more than a single input is a 1. If the inputs were 0, 0, and 1, the XOR Gate would send its output.
==== Distance Sensor ====
* The Distance Sensor send output when the distance between the sensing side of the block and another block or object come within a set distance.
==== Connecting Inputs and Outputs ====
Logic Blocks can be connected to any other block that can be controlled with input, including other Logic Blocks. To have a Logic Block control another block, Click the gear icon on the logic block and click the check box on the block that you would like it to control.
== Tips ==
* A single Logic Block control multiple blocks at a time. If your vehicle has a lot of [[Mechanical Blocks]] to control at once, you can set them to be controlled by a single logic block instead to avoid needing to modify the controls and timing of each block.
62348215a599c80058019a0797330abdedf169cd
165
164
2018-09-25T03:28:34Z
TheWaffleDimension
396107
/* XOR Gate */ Added disclaimer for differences between game and real-world logic.
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles.
== How Logic Gates Work ==
There are 4 types of logic blocks in the game:
* AND Gate
* OR Gate
* XOR Gate
* Distance Sensor
Logic Gates work by providing an output based on the input it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
==== AND Gate ====
* The AND Gate only produces its output if all of the inputs are not zero.
* Example: The AND Gate with two inputs receives a 1 and a 0. Because only one of the inputs is a 1, the AND Gate will not send its output. When it receives a 1 and a 1, it will send its output to whatever blocks that are marked to receive it.
==== OR Gate ====
* The OR Gate only produces its output if any of it inputs are not zero.
* Example: An OR Gate with 3 inputs receives a 1, 1, and 0. Because one of the inputs sends a 1, the OR Gate will send its output. If all of the inputs were 0, it would not send any output.
==== XOR Gate ====
* The XOR Gate only produces output if exactly one input is not zero.
* Example: An XOR Gate with 3 inputs receives a 1, 1, and 0. Unlike the OR Gate, the XOR Gate will not send its output because the more than a single input is a 1. If the inputs were 0, 0, and 1, the XOR Gate would send its output.
* Note that this is not the case with real-world binary logic, as with actual binary logic, an XOR Gate will send its output if an odd number of inputs are active.
==== Distance Sensor ====
* The Distance Sensor send output when the distance between the sensing side of the block and another block or object come within a set distance.
==== Connecting Inputs and Outputs ====
Logic Blocks can be connected to any other block that can be controlled with input, including other Logic Blocks. To have a Logic Block control another block, Click the gear icon on the logic block and click the check box on the block that you would like it to control.
== Tips ==
* A single Logic Block control multiple blocks at a time. If your vehicle has a lot of [[Mechanical Blocks]] to control at once, you can set them to be controlled by a single logic block instead to avoid needing to modify the controls and timing of each block.
83314fb6617f63fc59d660b1c937dea5aea56135
166
165
2018-09-25T03:32:40Z
TheWaffleDimension
396107
/* Tips */ Fixed grammar
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles.
== How Logic Gates Work ==
There are 4 types of logic blocks in the game:
* AND Gate
* OR Gate
* XOR Gate
* Distance Sensor
Logic Gates work by providing an output based on the input it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
==== AND Gate ====
* The AND Gate only produces its output if all of the inputs are not zero.
* Example: The AND Gate with two inputs receives a 1 and a 0. Because only one of the inputs is a 1, the AND Gate will not send its output. When it receives a 1 and a 1, it will send its output to whatever blocks that are marked to receive it.
==== OR Gate ====
* The OR Gate only produces its output if any of it inputs are not zero.
* Example: An OR Gate with 3 inputs receives a 1, 1, and 0. Because one of the inputs sends a 1, the OR Gate will send its output. If all of the inputs were 0, it would not send any output.
==== XOR Gate ====
* The XOR Gate only produces output if exactly one input is not zero.
* Example: An XOR Gate with 3 inputs receives a 1, 1, and 0. Unlike the OR Gate, the XOR Gate will not send its output because the more than a single input is a 1. If the inputs were 0, 0, and 1, the XOR Gate would send its output.
* Note that this is not the case with real-world binary logic, as with actual binary logic, an XOR Gate will send its output if an odd number of inputs are active.
==== Distance Sensor ====
* The Distance Sensor send output when the distance between the sensing side of the block and another block or object come within a set distance.
==== Connecting Inputs and Outputs ====
Logic Blocks can be connected to any other block that can be controlled with input, including other Logic Blocks. To have a Logic Block control another block, Click the gear icon on the logic block and click the check box on the block that you would like it to control.
== Tips ==
* A single Logic Block can control multiple blocks at a time. If your vehicle has a lot of [[Mechanical Blocks]] to control at once, you can set them to be controlled by a single logic block instead to avoid needing to modify the controls and timing of each block.
61c5e0c5daa76dca3275075a8412d99100627958
167
166
2019-08-19T22:35:38Z
68.193.38.77
0
/* Distance Sensor */
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles.
== How Logic Gates Work ==
There are 4 types of logic blocks in the game:
* AND Gate
* OR Gate
* XOR Gate
* Distance Sensor
Logic Gates work by providing an output based on the input it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
==== AND Gate ====
* The AND Gate only produces its output if all of the inputs are not zero.
* Example: The AND Gate with two inputs receives a 1 and a 0. Because only one of the inputs is a 1, the AND Gate will not send its output. When it receives a 1 and a 1, it will send its output to whatever blocks that are marked to receive it.
==== OR Gate ====
* The OR Gate only produces its output if any of it inputs are not zero.
* Example: An OR Gate with 3 inputs receives a 1, 1, and 0. Because one of the inputs sends a 1, the OR Gate will send its output. If all of the inputs were 0, it would not send any output.
==== XOR Gate ====
* The XOR Gate only produces output if exactly one input is not zero.
* Example: An XOR Gate with 3 inputs receives a 1, 1, and 0. Unlike the OR Gate, the XOR Gate will not send its output because the more than a single input is a 1. If the inputs were 0, 0, and 1, the XOR Gate would send its output.
* Note that this is not the case with real-world binary logic, as with actual binary logic, an XOR Gate will send its output if an odd number of inputs are active.
==== Distance Sensor ====
* The Distance Sensor sends output when the distance between the sensing side of the block and another block or object come within a set distance.
==== Connecting Inputs and Outputs ====
Logic Blocks can be connected to any other block that can be controlled with input, including other Logic Blocks. To have a Logic Block control another block, Click the gear icon on the logic block and click the check box on the block that you would like it to control.
== Tips ==
* A single Logic Block can control multiple blocks at a time. If your vehicle has a lot of [[Mechanical Blocks]] to control at once, you can set them to be controlled by a single logic block instead to avoid needing to modify the controls and timing of each block.
59d556bb072d13f7fcf86144d384a4b2266825ed
Thruster Blocks
0
43
264
2018-09-25T03:16:09Z
TheWaffleDimension
396107
Created page, included my findings on the power-to-weight ratios and lifting power of each engine.
wikitext
text/x-wiki
== Thruster Blocks ==
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
* Propeller (?)
* Underwater Propeller (?)
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each (jet) thruster engine can lift, and by association, the weight-to-power ratio of those engines.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 82.4kg
|}
He determined the weight-to-power ratio of the (jet) thruster engines to be approximately 0.35701112 kg/power.
3253ec20d02c722c48bd07748b6d846e082eadc4
265
264
2018-09-25T03:17:10Z
TheWaffleDimension
396107
Removed redundant header
wikitext
text/x-wiki
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
* Propeller (?)
* Underwater Propeller (?)
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each (jet) thruster engine can lift, and by association, the weight-to-power ratio of those engines.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 82.4kg
|}
He determined the weight-to-power ratio of the (jet) thruster engines to be approximately 0.35701112 kg/power.
a7b3d30e2817f34c18920ac104b3201134512814
266
265
2018-09-25T03:18:59Z
TheWaffleDimension
396107
Marked as stub
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
* Propeller (?)
* Underwater Propeller (?)
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each (jet) thruster engine can lift, and by association, the weight-to-power ratio of those engines.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 82.4kg
|}
He determined the weight-to-power ratio of the (jet) thruster engines to be approximately 0.35701112 kg/power.
87630634aba56ca06991ef97030d35c5fa575456
267
266
2018-10-11T02:20:28Z
Jeebus Quade
397979
Added number for propeller, proofread and edited the end of the page for more precise wording.
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
* Propeller (?)
* Underwater Propeller (?)
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 82.4kg (230 engine power)
|-
|Propeller
|71.4kg (200 engine power)
|}
1bc44b75543945060b9065f4ac4c1d2485d7166c
Wheels
0
50
338
2018-10-11T07:13:23Z
Maake986
86789
Created page with "'''Wheels''' are blocks that are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be..."
wikitext
text/x-wiki
'''Wheels''' are blocks that are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be un-powered so they will roll freely, or you can link an '''Engine''' to them to power them. You can also use wheels above and underwater
Right now in the 0.7.0 update we have medium selection of wheels.
-Normal Wheel
-Racing Wheel
-Slim Wheel
-Go-kart Wheel
-Drag racing Wheel
-Monster Wheel
-Truck Wheel
-Spiked Wheel
THIS PAGE IS Work In Progresss
af4e049f80d56f994858c0228cf7971538084392
339
338
2018-10-11T12:32:07Z
Maake986
86789
Added list of wheels and picture
wikitext
text/x-wiki
'''Wheels''' are blocks that are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be un-powered so they will roll freely, or you can link an '''Engine''' to them to power them. You can also use wheels above and underwater, but engines wont be able to spin them unless engine is above water.
Currently there are 8 different wheels in the game (0.7.0)
* Normal Wheel
* Racing Wheel
* Monster Truck Wheel
* Go-kart Wheel
* Slim Wheel
* Drag Racing Wheel
* Truck Wheel
* Spiked Wheel
[[File:All 8 wheels.jpg|center|frameless|900x900px]]
6157fd370bc132f93a5cbe73ad00d6fbe344b44b
340
339
2018-10-11T13:49:09Z
Fake sms
397981
I added the wheel´s stats
wikitext
text/x-wiki
'''Wheels''' are blocks that are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be un-powered so they will roll freely, or you can link an '''Engine''' to them to power them. You can also use wheels above and underwater, but engines wont be able to spin them unless engine is above water.
Currently there are 8 different wheels in the game (0.7.0)
* Normal Wheel
* Racing Wheel
* Monster Truck Wheel
* Go-kart Wheel
* Slim Wheel
* Drag Racing Wheel
* Truck Wheel
* Spiked Wheel[[File:All 8 wheels.jpg|center|frameless|900x900px]]Each wheel has different traction, max speed,acceleration and resistance:
* The <u>Normal Wheel</u> has intermediate stats has a decent traction on dirt,tarmac and bridges but slipps on mud.
* The <u>Racing Wheel</u> has a higher top speed,acceleration and has more traction on tarmac and bridges,but drifts on dirt and slides on mud.
* The <u>Monster Truck Wheel</u> is slower and heavier than the previous wheels but is has more traction on dirt thus less traction on tarmac.It is also the biggest wheel in the game.
* The <u>Go-Kart Wheel</u> is the smallest in the game, it has bad stats neither good speed or traction, but its the lightest wheel of all.
* The <u>Slim Wheel</u> is a classic looking wheel,it has better speed and acceleration that it sounds like but its very fragile and hasnt got very good traction,its slightly less grippy than the normal wheel.
* The <u>Drag Wheel</u> is a bigger racing wheel,It has the best traction on tarmac,but it needs power to move it as it is very heavy; has the best max speed.
* The <u>Truck Wheel</u> has good traction on dirt but its less grippy on tarmac and specially bridges,but as the game itself says,its not made for speed.
* The <u>Spiked Wheel</u> is a modified normal wheel that has better traction,but slightly less speed.
9cbbbe8af218e9e0e5f8cfeae217e7638c4c2f76
341
340
2019-01-23T03:40:49Z
MannedTooth
9479
wikitext
text/x-wiki
'''Wheels''' are blocks in ''[[Trailmakers]]''. They are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be un-powered so they will roll freely, or you can link an '''Engine''' to them to power them. You can also use wheels above and underwater, but engines wont be able to spin them unless engine is above water.
Currently there are 8 different wheels in the game (0.7.0)
* Normal Wheel
* Racing Wheel
* Monster Truck Wheel
* Go-kart Wheel
* Slim Wheel
* Drag Racing Wheel
* Truck Wheel
* Spiked Wheel[[File:All 8 wheels.jpg|center|frameless|900x900px]]Each wheel has different traction, max speed,acceleration and resistance:
* The <u>Normal Wheel</u> has intermediate stats has a decent traction on dirt,tarmac and bridges but slipps on mud.
* The <u>Racing Wheel</u> has a higher top speed,acceleration and has more traction on tarmac and bridges,but drifts on dirt and slides on mud.
* The <u>Monster Truck Wheel</u> is slower and heavier than the previous wheels but is has more traction on dirt thus less traction on tarmac.It is also the biggest wheel in the game.
* The <u>Go-Kart Wheel</u> is the smallest in the game, it has bad stats neither good speed or traction, but its the lightest wheel of all.
* The <u>Slim Wheel</u> is a classic looking wheel,it has better speed and acceleration that it sounds like but its very fragile and hasnt got very good traction,its slightly less grippy than the normal wheel.
* The <u>Drag Wheel</u> is a bigger racing wheel,It has the best traction on tarmac,but it needs power to move it as it is very heavy; has the best max speed.
* The <u>Truck Wheel</u> has good traction on dirt but its less grippy on tarmac and specially bridges,but as the game itself says,its not made for speed.
* The <u>Spiked Wheel</u> is a modified normal wheel that has better traction,but slightly less speed.
648204ba345f024b8275da8a2935951ef02264b5
Test (class)
0
42
262
261
2019-01-23T03:39:20Z
MannedTooth
9479
wikitext
text/x-wiki
This is just a test page to showcase the usage of {{Tlx|DisambigMsg}}.
[[Category:Notice templates|DisambigMsg]]
6fea560241e0ecb6514dce689df42c15dbc6583f
Test (achievement)
0
41
259
258
2019-01-23T03:39:22Z
MannedTooth
9479
wikitext
text/x-wiki
This is just a test page to showcase the usage of {{Tlx|DisambigMsg}}.
[[Category:Notice templates|DisambigMsg]]
6fea560241e0ecb6514dce689df42c15dbc6583f
Release date
0
36
234
233
2019-09-30T08:18:50Z
69.230.84.27
0
Updated release info to better fit the release date.
wikitext
text/x-wiki
{{Stub}}
This page contains the '''release date''' information for [[Trailmakers]].
==Release date==
Trailmakers was released in early access on January 30, 2018. It was later fully released on September 18, 2019.
==Release information==
The full game costs a total of $25.00USD (€22.28) and expanded on the physics engine, released the [[Campaign]] [[Game Modes|gamemode]] to the public, and added several minor improvements.
==See also==
* [[How to play guide for Trailmakers]]
* [[System requirements]]
[[Category:Guides]]
122f51bf07f75fed80a07d39cc6a9880b7029a06
Game Modes
0
20
105
104
2019-09-30T08:22:35Z
69.230.84.27
0
Replaced Expedition with Campaign Mode.
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Campaign Mode: Stranded in Space==
After your spacecraft crashes on an unknown alien world, you must gather salvage from across the vast map in order to build a spaceship to fly home. Dive into the depths of the ocean, Fly into a volcano, the world is your oyster in this open-ended survival adventure.
==Creative==
Creative Mode is an unrestricted, sandbox, vehicle-building experience where you can build anything you can dream of and play around with it in the world of Trailmakers. It is a great place to test out crazy machines, and experiment with Trailmaker engineering. With tons of different blocks, hinges, thrusters and interactive vehicle parts - the sky's the limit!
== Multi-player ==
There are two modes in Multi-player. The first is Sandbox mode, and the next is the PvP mode. When customizing the server, you have loads of options. There are two different maps at this point. The first one
==== Sandbox ====
This mode allows the server to have unlimited power cores, and the ability to build whatever you want. Just be careful how big your creations are because the bigger they are the laggier the game is.
==== PvP ====
PvP is the place where you get to test out your creations. You can battle others in the fight for time and the specter bolt. The person who holds the bolt the longest wins.
[[Category:Trailmakers]]
[[Category:Game Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
304cf415ef5f514363993d9ca3341635dd23a282
Mechanical Blocks
0
28
171
2020-02-29T06:04:18Z
114.108.236.254
0
yes
wikitext
text/x-wiki
bruh why
0b507fef3627cb85719a21579d4e2671f6fc51c5
172
171
2020-02-29T06:08:05Z
114.108.236.254
0
information
wikitext
text/x-wiki
Mechanical Blocks are blocks that move by the Logic Blocks, seat, or another Mechanical Block.
why am i doing this
hello
i like hetalia
9c6528059907d8ee8ac20b4e09b73a45c6cef2c5
173
172
2020-02-29T06:11:20Z
114.108.236.254
0
info
wikitext
text/x-wiki
Mechanical Blocks are blocks that move by the Logic Blocks, seat, or another Mechanical Block.
ebb5fa3815923316f5acfd7a34c13d48774256d7
Aerodynamic Blocks
0
12
47
2020-02-29T06:14:16Z
114.108.236.254
0
Created page with "[[Aerodynamic Blocks]] are [[blocks]] that are very aerodynamic and good for designs."
wikitext
text/x-wiki
[[Aerodynamic Blocks]] are [[blocks]] that are very aerodynamic and good for designs.
98635409fbe468536c543de71b4a87107941cfe0
48
47
2020-02-29T06:28:32Z
114.108.236.254
0
info yes?
wikitext
text/x-wiki
[[Aerodynamic Blocks]] are [[blocks]] that are very aerodynamic and good for designs. <nowiki>[[secret]]</nowiki>
fe7d19d6872c9fc23fc4734d34e2bb0dae2015fb
49
48
2020-02-29T06:29:24Z
114.108.236.254
0
jkjj
wikitext
text/x-wiki
[[Aerodynamic Blocks]] are [[blocks]] that are very aerodynamic and good for designs. [[Secret|Secret Hee]]
bdbe351ae74f1c744c4a01aca4f42b205a43353c
50
49
2020-02-29T06:30:55Z
114.108.236.254
0
d
wikitext
text/x-wiki
[[Aerodynamic Blocks]] are [[blocks]] that are very aerodynamic and good for designs.
98635409fbe468536c543de71b4a87107941cfe0
Power cores
0
31
195
2020-02-29T06:17:33Z
114.108.236.254
0
Created page with "[[Power Cores]] will appear when you place [[Propulsion blocks]]"
wikitext
text/x-wiki
[[Power Cores]] will appear when you place [[Propulsion blocks]]
cc5f6ebbea9f36188cc7bbee68571898c456b6c4
Propulsion Blocks
0
33
213
2020-02-29T06:19:19Z
114.108.236.254
0
Created page with "[[Propulsion Blocks]] are [[blocks]] that moves your vehicle."
wikitext
text/x-wiki
[[Propulsion Blocks]] are [[blocks]] that moves your vehicle.
c8476f3bc8662f688c9052bbeefd9c0eb96b3da1
Trailmakers
0
44
298
297
2020-02-29T06:32:18Z
114.108.236.254
0
Informaton and external links.
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
*[[Secret hee|Secret]]
[[Category:Trailmakers Wiki]]
021f3b20195b0b07b5ccfbe5a39616d859ae70ef
299
298
2020-02-29T06:33:42Z
114.108.236.254
0
mn
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
*[[Secret]]
[[Category:Trailmakers Wiki]]
23ab8c6aa9507ecb1b46e166fc45e2de02eb0d1b
300
299
2020-03-20T01:05:49Z
MannedTooth
9479
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
65d1c6f8fb4f86b91eb5cdc619feb80cf5a547b6
301
300
2020-05-18T15:29:45Z
Wagnike2
16625
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018. Trailmakers will be released on PlayStation 4 on May 21, 2020.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===Multiplayer===
Trailmakers is even more fun if you play it with a friend. Put two seats in your vehicle or race each other towards that last jet engine - it is up to you. Both Creative and Expedition Mode support multiplayer.
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
9c24e6fdba7cc4ba1d1a9e1348ca21d4bb49f140
302
301
2021-01-09T21:01:41Z
108.167.87.79
0
/* Multiplayer */
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018. Trailmakers will be released on PlayStation 4 on May 21, 2020.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
===you just have to poop===
<br />
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
602c81d50da022b6af143c793d86e68ae0f415d1
303
302
2021-01-10T16:29:25Z
99.255.103.22
0
/* you just have to poop */
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018. Trailmakers will be released on PlayStation 4 on May 21, 2020.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
<br />
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations.
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
4d954cea34252eadbd1ee54c2c84c5c825821b17
304
303
2021-01-26T11:59:47Z
84.217.55.13
0
/* Mod Support */
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018. Trailmakers will be released on PlayStation 4 on May 21, 2020.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
<br />
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations!
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
f918f447454c01eff113059b62d5cd08cc947473
305
304
2021-11-27T04:45:53Z
205.123.96.2
0
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation chicken.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018. Trailmakers will be released on PlayStation 4 on May 21, 2020.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
<br />
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations!
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
aa73088234358f4381294f040f44db2322365968
Biomes
0
13
57
56
2020-03-28T18:38:29Z
213.21.112.218
0
Added a little bit of text
wikitext
text/x-wiki
{{Stub}}
'''Biomes''' are the different regions in [[Trailmakers]].
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
Trailmakers contains a variety of biomes.
[[Category:Trailmakers]]
68472979b11255efe39527b3af10b07c53ad95b0
Thruster Blocks
0
43
268
267
2020-03-28T18:47:02Z
213.21.112.218
0
/* Power */
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 82.4kg (230 engine power)
|-
|Propeller
|71.4kg (200 engine power)
|}
15bc808eb5513295d612ff731e815512ba7f7a88
269
268
2020-03-28T18:48:27Z
213.21.112.218
0
/* Power */
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 82.4kg (230 engine power)
|}
8c35eaa9a0760cc7cba482c107b2f3881e7cd1d5
270
269
2020-08-18T09:08:34Z
124.189.247.7
0
/* Power */
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 82.4kg (230 engine power)
|}
340ab569881423f765011361df04dfbd29c5c2a1
271
270
2021-05-14T16:55:59Z
Axolotol711
86875
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
! Engine Power
|-
| Mini-Thruster
| 28.6kg
|
|-
| Dragon Jet Engine
| 106.7kg
| 300
|-
| RAW Jet Engine
| 268.4kg
| 750
|-
| Gimbal Jet
| 82.4kg
| 230
|}
b1e9330e43f1afd8665e9aebb641b2ece10609ec
272
271
2021-05-14T17:00:40Z
Axolotol711
86875
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 82.4kg (230 engine power)
|}
139e8e27098ac2d3581c37ecea9440bfd9f46172
273
272
2021-06-02T22:11:58Z
69.242.35.50
0
/* Power */
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 82.4kg
|}
706a935deaeffdbe0899fe1402a6aa53b8708b29
274
273
2021-08-06T03:29:30Z
104.166.205.138
0
Gimbal Jet thrust accuracy changed.
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 78.57167kg (more precise)
|}
ac84f7843bf07ec87499afa0a22cbee2d1200969
275
274
2021-08-06T03:32:27Z
104.166.205.138
0
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
* Mini-Thruster
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 78.57167kg (more precise)
|}
To create neutral buoyancy using gimbals, the ratio is 0.012727 gimbal power per kilogram.
e8d721feb5c01cbe5617a2d4c85a64698b671271
276
275
2021-12-13T19:13:10Z
Kitenofs
397974
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
*[[Mini-Thuster|Mini-Thruster]]
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 78.57167kg (more precise)
|}
To create neutral buoyancy using gimbals, the ratio is 0.012727 gimbal power per kilogram.
43bb115ac699f449d8e19ef87f7bdbc197ac5253
Blocks
0
6
18
17
2020-03-28T18:49:19Z
213.21.112.218
0
/* Engine blocks */
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
This type of block provides power or thrust to your vehicle. Some types of engine blocks include:
*Engine Blocks
*Hover Blocks
*[[Thruster Blocks]]
*Propeller Blocks
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
[[Mechanical Blocks]] can move to give functionality to a vehicle.
===Aerodynamic blocks===
[[Aerodynamic Blocks]] allow air to pass around them more easily, resulting in higher top speeds.
=== Logic Blocks ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
6573f64ff47f8448a5d3730dd1953fd69e865586
19
18
2020-03-28T19:03:47Z
213.21.112.218
0
/* Engine blocks */
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Engine blocks===
This type of block provides power or thrust to your vehicle. Some types of engine blocks include:
*Engine Blocks
*Hover Blocks
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
[[Mechanical Blocks]] can move to give functionality to a vehicle.
===Aerodynamic blocks===
[[Aerodynamic Blocks]] allow air to pass around them more easily, resulting in higher top speeds.
=== Logic Blocks ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
22bc0004dddbea2237e927567c7e083da3c56e3e
Propeller Blocks
0
32
201
2020-03-28T19:01:20Z
213.21.112.218
0
Added page "Propeller Blocks"
wikitext
text/x-wiki
== Propeller Blocks ==
Propeller Blocks are propulsion blocks. They are a sort of thruster blocks, but they behave in a different way. There are two subcategories of propeller blocks:
=== Pre-made propeller blocks ===
There are two pre-made propeller blocks:
* Propeller
* Underwater Propeller
These two blocks give propulsion through rotating. The normal Propeller can be used in airplanes etc. and the Underwater Propeller may be used in boats, submarines etc.
=== Other propeller blocks ===
There are also two types of "other" propeller blocks. They are:
' Helicopter Engine
* Helicopter Engine v2
The difference between the two different helicopter engines is that the "normal" one has a rotating top, while the "v2" has a static top.
These engines are often used as rotational engines, as a Helicopter engine without blades will try to spin the creatinon around itself.
39610dbe58c904967b1ac95e18791d27bec0fdbb
202
201
2020-03-28T19:01:54Z
213.21.112.218
0
/* Other propeller blocks */
wikitext
text/x-wiki
== Propeller Blocks ==
Propeller Blocks are propulsion blocks. They are a sort of thruster blocks, but they behave in a different way. There are two subcategories of propeller blocks:
=== Pre-made propeller blocks ===
There are two pre-made propeller blocks:
* Propeller
* Underwater Propeller
These two blocks give propulsion through rotating. The normal Propeller can be used in airplanes etc. and the Underwater Propeller may be used in boats, submarines etc.
=== Other propeller blocks ===
There are also two types of "other" propeller blocks. They are:
* Helicopter Engine
* Helicopter Engine v2
The difference between the two different helicopter engines is that the "normal" one has a rotating top, while the "v2" has a static top.
These engines are often used as rotational engines, as a Helicopter engine without blades will try to spin the creatinon around itself.
8ad24b4d944b3ea5490dba12d151b5ab932ce1e4
203
202
2020-11-03T04:08:04Z
81.230.60.87
0
/* Other propeller blocks */
wikitext
text/x-wiki
== Propeller Blocks ==
Propeller Blocks are propulsion blocks. They are a sort of thruster blocks, but they behave in a different way. There are two subcategories of propeller blocks:
=== Pre-made propeller blocks ===
There are two pre-made propeller blocks:
* Propeller
* Underwater Propeller
These two blocks give propulsion through rotating. The normal Propeller can be used in airplanes etc. and the Underwater Propeller may be used in boats, submarines etc.
=== Other propeller blocks ===
There are also two types of "other" propeller blocks. They are:
* Helicopter Engine
* Helicopter Engine v2
The difference between the two different helicopter engines is that the "normal" one has a rotating top, while the "v2" has a static top.
These engines are often used as rotational engines, as a Helicopter engine without blades will try to spin the creation around itself.
"Note" All of this is outdated
047f8c8eacd4d4644c03d981da7bb4ee769d61bf
204
203
2020-12-24T05:44:41Z
216.248.82.140
0
/* Other propeller blocks */
wikitext
text/x-wiki
== Propeller Blocks ==
Propeller Blocks are propulsion blocks. They are a sort of thruster blocks, but they behave in a different way. There are two subcategories of propeller blocks:
=== Pre-made propeller blocks ===
There are two pre-made propeller blocks:
* Propeller
* Underwater Propeller
These two blocks give propulsion through rotating. The normal Propeller can be used in airplanes etc. and the Underwater Propeller may be used in boats, submarines etc.
=== Other propeller blocks ===
There are also two types of "other" propeller blocks. They are:
* Helicopter Engine
* Helicopter Engine v2
The difference between the two different helicopter engines is that the "normal" one has a rotating top, while the "v2" has a static top.
These engines are often used as rotational engines, as a Helicopter engine without blades will try to spin the creation around itself. Each engine can carry about 197.5 kg.
"Note" All of this is outdated
c572e58599f1d5900c11d3b0cc4a24169c84e223
205
204
2021-05-20T08:01:38Z
68.96.204.117
0
/* Propeller Blocks */
wikitext
text/x-wiki
"Note" All of this is outdated
92822c14160750d799365309243f6a343ecb2b6c
Aerodynamic Blocks
0
12
51
50
2020-04-26T19:59:00Z
92.21.202.33
0
wikitext
text/x-wiki
[[Aerodynamic Blocks]] are [[blocks]] that are very aerodynamic and good for designs because they allow air to flow past the vehicle and help achieving high speeds.
f84f8dc73fa24eb39106a13a1cba3a7d30ba40d9
Trailmakers Wiki/Flex section
0
47
326
325
2020-06-09T15:40:39Z
Pcjbot
2660
Fixing Twitch autoplay
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Guides box-->
<div class="heading">Guides</div>
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
</div><!--END Guides box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Videos box-->
<div class="heading">Videos</div>
<div class="fpvideos">
<div class="fpvideo">{{#ev:twitchvod|v188417911|500|center|||}}</div>
</div>
</div><!--END Videos box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Images box-->
<div class="heading">Featured images</div>
{{Featured images}}
</div><!--END Images box-->
<div class="fpbox" id="fplinks" style="text-align: center;"><!-- BEGIN Links box-->
<div class="heading">''Trailmakers'' Links</div>
<div class="fplinks">{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div>
</div><!--END Links box-->
<noinclude>[[Category:Front page sections]]</noinclude>
2bb76d323e0038efe627dae99e0904696f8390ea
327
326
2021-09-04T00:52:48Z
Wagnike2
16625
Removing non-functioning video section.
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Guides box-->
<div class="heading">Guides</div>
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
</div><!--END Guides box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Images box-->
<div class="heading">Featured images</div>
{{Featured images}}
</div><!--END Images box-->
<div class="fpbox" id="fplinks" style="text-align: center;"><!-- BEGIN Links box-->
<div class="heading">''Trailmakers'' Links</div>
<div class="fplinks">{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div>
</div><!--END Links box-->
<noinclude>[[Category:Front page sections]]</noinclude>
d28ecd8749e251342bcf8bea7796e913780dc693
Power cores
0
31
196
195
2020-07-04T12:45:49Z
SuperNova ReImgn
397976
Expanded on power core ratings, their importance in Stranded in Space, and the Power Core reqs of each block, as well as power core reqs of leagues (unfinished)
wikitext
text/x-wiki
[[Power Cores]] will appear when you place [[Propulsion blocks]] as an indicator of the power of your vehicle. Propulsion blocks are not the only block that require Power Cores, as gadgets such as the Electromagnet and Cannons require them as well.
In the Racing gamemode, vehicles are rated based on the amount of cores they use. Vehicles with similar amount of cores are put into their respective leagues for each race, such that different leagues have different leaderboards for each racetrack.
{| class="wikitable"
|+Power Core Leagues
!League
!Power Cores
!
!
|-
|Bionic League
|0
|
|
|-
|Gokart League
|1
|
|
|-
|
|2-5
|
|
|}
In the Stranded in Space Campaign gamemode, Power Cores serve as a limiting factor to the power of your vehicle. You have a limited amount of power cores to use, which can be increased by collecting certain scrap found around the map.
Each propulsion block has a power core requirement, which differs depending on the power of the block.
{| class="wikitable"
|+Engine Block Power Core Requirements
!Block
!Power Core Requirement
|-
|Bulldog Engine
|1
|-
|RAW Engine
|2
|-
|Dragon Engine
|3
|-
|Mini Thruster
|1
|-
|RAW Thruster
|2
|-
|Dragon Thruster
|3
|-
|Gimbal Jet
|1
|-
|Hover Block
|1
|-
|Helicopter Engine V1
|1
|-
|Helicopter Engine V2
|1
|}
Many of the gadgets also require power cores to function.
{| class="wikitable"
|+
!Block
!Power Core Requirement
|-
|Electromagnet
|1
|-
|Small Cannon
|1
|-
|Large Cannon
|3
|-
|Tank Cannon
|3
|-
|Dynamite
|1
|}
59f4a3d52ee0bef1e9123472d5df6b98315ad744
Wheels
0
50
342
341
2020-10-10T07:31:00Z
Scespi
397982
wikitext
text/x-wiki
'''Wheels''' are blocks in ''[[Trailmakers]]''. They are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be un-powered so they will roll freely, or you can link an '''Engine''' to them to power them. You can also use wheels above and underwater, but engines wont be able to spin them unless engine is above water.
Currently there are 8 different wheels in the game (0.7.0)
* Normal Wheel
* Racing Wheel
* Monster Truck Wheel
* Go-kart Wheel
* Slim Wheel
* Drag Racing Wheel
* Truck Wheel
* Spiked Wheel[[File:All 8 wheels.jpg|center|frameless|900x900px]]Each wheel has different traction, max speed,acceleration and resistance:
* The <u>Normal Wheel</u> has intermediate stats has a decent traction on dirt,tarmac and bridges but slipps on mud.
* The <u>Racing Wheel</u> has a higher top speed,acceleration and has more traction on tarmac and bridges,but drifts on dirt and slides on mud.
* The <u>Monster Truck Wheel</u> is slower and heavier than the previous wheels but is has more traction on dirt thus less traction on tarmac.It is also the biggest wheel in the game.
* The <u>Go-Kart Wheel</u> is the smallest in the game, it has bad stats neither good speed or traction, but its the lightest wheel of all.
* The <u>Slim Wheel</u> is a classic looking wheel,it has better speed and acceleration that it sounds like but its very fragile and hasnt got very good traction,its slightly less grippy than the normal wheel.
* The <u>Drag Wheel</u> is a bigger racing wheel,It has the best traction on tarmac,but it needs power to move it as it is very heavy; has the best max speed.
* The <u>Truck Wheel</u> has good traction on dirt but its less grippy on tarmac and specially bridges,but as the game itself says,its not made for speed.
* The <u>Spiked Wheel</u> is a modified normal wheel that has better traction,but slightly less speed.it has 8 wheels that are very cool
Spiked wheels is coolest
c0644a2c809931b0e88961e7797726603d03d4d6
343
342
2021-08-07T05:15:16Z
CerebralCortexDiscord
116307
wikitext
text/x-wiki
'''Wheels''' are blocks in ''[[Trailmakers]]''. They are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be un-powered so they will roll freely, or you can link an '''Engine''' to them to power them. You can also use wheels above and underwater, but engines wont be able to spin them unless engine is above water.
Currently there are 10 different wheels in the game.
*<u>Offroad Wheel</u> - ''"Slightly better traction on rough terrain than on tarmac."'' The starter wheels in the campaign. They are a medium sized wheel with solid performance on grass/sand/etc. However, they will struggle in mud. It weighs 10kg.
*<u>Racing Wheel</u> - ''"Better grip on tarmac than rough terrain."'' A medium sized wheel that performs particularly for staying on paved surfaces but falters in offroad terrain. It weighs 10kg.
*<u>Monster Truck Wheel</u> - ''"Large and heavy wheel with good overall grip."'' The largest of all wheels and by far the heaviest. The best wheel in terms of control in mud and offroad terrain, however, it is offset by the fact it will immensely slow a vehicle down due to the weight, friction, and poor aerodynamics. It weighs 25kg.
*<u>Go-kart Wheel</u>
*<u>Slim Wheel</u> - ''"Relatively poor grip and speed, but very light weight."'' A medium sized and thin wheel with atrociously bad control, especially in offroad terrain. Despite its description, it is by far the fastest wheel due to its light weight, aerodynamics, and lack of friction, making it excellent for vehicles that don't need to turn much on the ground (such as drag racers or planes that require runways). It weighs 1.5kg.
*<u>Drag Racing Wheel</u> - ''"Large wheel with better grip on tarmac than rough terrain."'' An enormous wheel that's size is only surpassed by the Monster Truck Wheel. It has the best grip of all wheels on paved surfaces and thus does not easily come off the ground or lose control when turning on its intended surface. Despite its name, in terms of speed it's terrible, as it will slow a vehicle down due to the heavy weight and friction. It weighs 20kg.
*<u>Truck Wheel</u> - ''"Large wheel with good overall grip."'' A large wheel that performs well on offroad terrain. Not nearly as large or heavy as the Monster Truck Wheel and thus, will not slow a vehicle down as much. While it performs better than most wheels in the mud, it will still suffer from some lack of control. It weighs 15kg.
*<u>Spiked Wheel</u> - ''"Good grip on rough terrain."'' A medium sized wheel with spikes embedded into it. Has excellent grip in offroad terrain, keeping lighter vehicles grounded when driving offroad while only suffering a slight loss in speed compared to the offroad wheels. However, they still perform poorly in mud. An excellent replacement for the offroad wheels if you favor control over speed. It weighs 10kg.
*<u>Motorcycle Wheel</u> - ''"A rad wheel for your hog. Average grip on all surfaces."'' A medium sized thin wheel with decent control. A very fast wheel that, unlike the Slim Wheel, has some measure of control. In comparison to dedicated offroad/tarmac wheels however, it's flighty and can easily lose control when turning. It weights 7.5kg
*<u>Ski</u> - ''"For gliding."'' Not technically a wheel, but still placed under the category. It very easily slides across the ground. Unlike tires, it does not make use of an engine nor does it rotate, and so it requires another form of propulsion (such as a thruster) in order to make use of it. It weighs 0.2kg.
<br />
b38839cdf875715ff3aa4fbeac03ee7d9bce3615
How to play guide for Trailmakers
0
23
141
140
2020-12-11T16:45:32Z
108.2.107.61
0
/* Tips and tricks */
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic Gameplay==
The best way to get started is to enter the single player Expedition mode and begin your journey.
In Expedition mode you will be taught the basics of construction and gradually be challenged to solve navigation puzzles by applying and expanding the principles you have been taught.
==Controls==
The Controls are simple. You can use the mainstream, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press B, and the same to get out.
==Tips and Tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Pseudo-weight (downforce, aka spoilers)
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy then their less traction based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal) this is due to how they are evaluated by the physics engine
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
2acad48d0fa404b15057b791782ae998f066155d
142
141
2020-12-19T09:53:28Z
86.149.112.67
0
/* Control */
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic Gameplay==
The best way to get started is to enter the single player Expedition mode and begin your journey.
In Expedition mode you will be taught the basics of construction and gradually be challenged to solve navigation puzzles by applying and expanding the principles you have been taught.
==Controls==
The Controls are simple. You can use the mainstream, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press B, and the same to get out.
==Tips and Tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Pseudo-weight (downforce, aka spoilers)
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy then their less traction based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal) this is due to how they are evaluated by the physics engine
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable and won’t fall over
*#
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
40f7576542725a29d553a424b8afa29b93255d90
143
142
2021-03-23T23:24:04Z
47.28.124.61
0
/* Controls */
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic Gameplay==
The best way to get started is to enter the single player Expedition mode and begin your journey.
In Expedition mode you will be taught the basics of construction and gradually be challenged to solve navigation puzzles by applying and expanding the principles you have been taught.
==Controls==
The Controls are simple. You can use the mainstream, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of ch
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Pseudo-weight (downforce, aka spoilers)
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy then their less traction based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal) this is due to how they are evaluated by the physics engine
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable and won’t fall over
*#
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
eea92fb4fed2891d9d78baf99356be952a6dac28
144
143
2021-12-21T07:51:58Z
Paladin Aladin
37223
Undo revision 447 by [[Special:Contributions/47.28.124.61|47.28.124.61]] ([[User talk:47.28.124.61|talk]]) - even their inbetween might be a method to change keybindings, its better to have this text instead of nothing but a cropped fragment
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic Gameplay==
The best way to get started is to enter the single player Expedition mode and begin your journey.
In Expedition mode you will be taught the basics of construction and gradually be challenged to solve navigation puzzles by applying and expanding the principles you have been taught.
==Controls==
The Controls are simple. You can use the mainstream, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press B, and the same to get out.
==Tips and Tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Pseudo-weight (downforce, aka spoilers)
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy then their less traction based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal) this is due to how they are evaluated by the physics engine
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable and won’t fall over
*#
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
40f7576542725a29d553a424b8afa29b93255d90
Blueprints
0
14
67
66
2021-01-03T07:44:31Z
87.145.73.99
0
/* Importing */
wikitext
text/x-wiki
'''Blueprints''' are saved [[Building|built creations]] in [[Trailmakers]], and are the key way of sharing vehicles. Blueprints are manifested as .PNG files, with the vehicle data encoded into them.
== Importing ==
If someone sends you a blueprint, they can be downloaded by:
:#Save the image to a known location
:#In Trailmakers go to the Blueprints section
:#Click the import arrow (depicted as a box with an arrow entering it)
:#Find the file you saved prior and click "open"
== Exporting ==
To export your blueprint and send it to someone else to import follow these steps:
:#
:#Hover over a saved vehicle
:#Click the white box that appears above it (depicted as a box with an arrow leaving it)
:#Save to a known location
:#Send it to someone
[[Category:Building]]
a129c6a8a498ac7ebb1609c2ea480173e3b89223
Game Modes
0
20
106
105
2021-01-23T19:37:00Z
89.246.120.69
0
/* Sandbox */
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Campaign Mode: Stranded in Space==
After your spacecraft crashes on an unknown alien world, you must gather salvage from across the vast map in order to build a spaceship to fly home. Dive into the depths of the ocean, Fly into a volcano, the world is your oyster in this open-ended survival adventure.
==Creative==
Creative Mode is an unrestricted, sandbox, vehicle-building experience where you can build anything you can dream of and play around with it in the world of Trailmakers. It is a great place to test out crazy machines, and experiment with Trailmaker engineering. With tons of different blocks, hinges, thrusters and interactive vehicle parts - the sky's the limit!
== Multi-player ==
There are two modes in Multi-player. The first is Sandbox mode, and the next is the PvP mode. When customizing the server, you have loads of options. There are two different maps at this point. The first one
==== Sandbox ====
This mode allows the server to have unlimited power cores, and the ability to build whatever you want. Just be careful how big your creations are because the bigger they are the laggier the game is.
==== PvP ====
PvP is the place where you get to test out your creations. You can battle others in the fight for time and the specter bolt. The person who holds the bolt the longest wins.
[[Category:Trailmakers]]
[[Category:Game Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
c32b3bbf540bf52344ff955220d9ecb2646b71d9
107
106
2021-12-27T08:09:44Z
SilvrrGaming
397968
/* Creative */
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Campaign Mode: Stranded in Space==
After your spacecraft crashes on an unknown alien world, you must gather salvage from across the vast map in order to build a spaceship to fly home. Dive into the depths of the ocean, Fly into a volcano, the world is your oyster in this open-ended survival adventure.
== Multi-player ==
There are two modes in Multi-player. The first is Sandbox mode, and the next is the PvP mode. When customizing the server, you have loads of options. There are two different maps at this point. The first one
==== Sandbox ====
This mode allows the server to have unlimited power cores, and the ability to build whatever you want. Just be careful how big your creations are because the bigger they are the laggier the game is.
==== PvP ====
PvP is the place where you get to test out your creations. You can battle others in the fight for time and the specter bolt. The person who holds the bolt the longest wins.
[[Category:Trailmakers]]
[[Category:Game Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
de71b2f414e70ef96d76de7240d46606174f2dfe
108
107
2021-12-27T08:11:34Z
SilvrrGaming
397968
/* Sandbox */
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Campaign Mode: Stranded in Space==
After your spacecraft crashes on an unknown alien world, you must gather salvage from across the vast map in order to build a spaceship to fly home. Dive into the depths of the ocean, Fly into a volcano, the world is your oyster in this open-ended survival adventure.
== Multi-player ==
There are two modes in Multi-player. The first is Sandbox mode, and the next is the PvP mode. When customizing the server, you have loads of options. There are two different maps at this point. The first one
==== Sandbox ====
This mode allows the server to have unlimited power cores, and the ability to build whatever you want (broken). Just be careful how big your creations are because the bigger they are the laggier the game is.
==== PvP ====
PvP is the place where you get to test out your creations. You can battle others in the fight for time and the specter bolt. The person who holds the bolt the longest wins.
[[Category:Trailmakers]]
[[Category:Game Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
b3ebdc6ad643c3be7698317f65731d2a8914ab4d
System requirements
0
40
255
254
2021-06-02T22:09:39Z
69.242.35.50
0
/* Recommended requirements */
wikitext
text/x-wiki
{{Stub}}
The following are the minimum and recommended '''system requirements''' for [[Trailmakers]]. While these requirements do not represent a guaranteed working configuration, meeting the minimum requirements should ensure at least a launch-able environment.
==Recommended requirements==
* OS: Windows 10 64 Bit
* Processor: i7-7700K
* Memory: 16 GB RAM
* Graphics: GTX 1080
* Network: Broadband Internet connection
* Storage: 10 GB available space
==Minimum requirements==
*'''OS:''' Windows 7 64 Bit
*'''Processor:''' i5-4440 (3.1 GHz quad-core)
*'''Memory:''' 8 GB RAM
*'''Graphics:''' GTX 660
*'''DirectX:''' Version 11
*'''Network:''' Broadband Internet connection
*'''Storage:''' 6 GB available space
==See also==
* [[How to play guide for Trailmakers]]
* [[Release date]]
[[Category:Guides]]
5ccbd0ce74578fc4a86dc3870688596d4fc26315
256
255
2021-06-03T00:30:34Z
Malvodion
4285
wikitext
text/x-wiki
{{Stub}}
The following are the minimum and recommended '''system requirements''' for [[Trailmakers]]. While these requirements do not represent a guaranteed working configuration, meeting the minimum requirements should ensure at least a launch-able environment.
==Recommended requirements==
*'''OS:''' Windows 10 64 Bit
*'''Processor:''' i7-7700K
*'''Memory:''' 16 GB RAM
*'''Graphics:''' GTX 1080
*'''Network:''' Broadband Internet connection
*'''Storage:''' 10 GB available space
==Minimum requirements==
*'''OS:''' Windows 7 64 Bit
*'''Processor:''' i5-4440 (3.1 GHz quad-core)
*'''Memory:''' 8 GB RAM
*'''Graphics:''' GTX 660
*'''DirectX:''' Version 11
*'''Network:''' Broadband Internet connection
*'''Storage:''' 6 GB available space
==See also==
* [[How to play guide for Trailmakers]]
* [[Release date]]
[[Category:Guides]]
f9df533240205144e627105dfbd8945c9076be94
Logic Blocks
0
27
168
167
2021-09-16T21:05:44Z
Deojee
397973
/* OR Gate */
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles.
== How Logic Gates Work ==
There are 4 types of logic blocks in the game:
* AND Gate
* OR Gate
* XOR Gate
* Distance Sensor
Logic Gates work by providing an output based on the input it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
The output of a logic gate is *not* the output you specify in the editor while building. The output of the gates is calculated by adding all the inputs together, rounding down to 1 if it is above, or up to -1 if it is below, then multiplying this value by the "output." This means both AND Gates and OR Gates can output values of zero.
==== AND Gate ====
* The AND Gate only produces its output if all of the inputs are not zero.
* Example: The AND Gate with two inputs receives a 1 and a 0. Because only one of the inputs is a 1, the AND Gate will not send its output. When it receives a 1 and a 1, it will send its output to whatever blocks that are marked to receive it.
*Example 2: An AND Gate with 3 inputs receives a 1, -0.5, and -0.5. Because adding the inputs together equals 0, the AND gate outputs nothing.
==== OR Gate ====
* The OR Gate only produces its output if any of it inputs are not zero.
* Example: An OR Gate with 3 inputs receives a 1, 1, and 0. Because one of the inputs sends a 1, the OR Gate will send its output. If all of the inputs were 0, it would not send any output.
*Example 2: An OR Gate with 3 inputs receives a 1, -0.5, and -0.5. Because adding the inputs together equals 0, the OR gate outputs nothing.
*Note that, like the other gates, the output of the OR Gate is calculated by adding all the inputs together, rounding down to 1 if it is above, or up to -1 if it is below, then multiplying this value by the "output."
==== XOR Gate ====
* The XOR Gate only produces output if exactly one input is not zero.
* Example: An XOR Gate with 3 inputs receives a 1, 1, and 0. Unlike the OR Gate, the XOR Gate will not send its output because the more than a single input is a 1. If the inputs were 0, 0, and 1, the XOR Gate would send its output.
* Note that this is not the case with real-world binary logic, as with actual binary logic, an XOR Gate will send its output if an odd number of inputs are active.
==== Distance Sensor ====
* The Distance Sensor sends output when the distance between the sensing side of the block and another block or object come within a set distance.
==== Connecting Inputs and Outputs ====
Logic Blocks can be connected to any other block that can be controlled with input, including other Logic Blocks. To have a Logic Block control another block, Click the gear icon on the logic block and click the check box on the block that you would like it to control.
== Tips ==
* A single Logic Block can control multiple blocks at a time. If your vehicle has a lot of [[Mechanical Blocks]] to control at once, you can set them to be controlled by a single logic block instead to avoid needing to modify the controls and timing of each block.
94da4ed88bacdb63f92535e1564fefccf37a95b1
Trailmakers Wiki
0
45
314
313
2021-10-19T12:55:57Z
Encredechine
17946
wikitext
text/x-wiki
<!-- TO EDIT MAIN PAGE CONTENT, see "Templates used on this page" below and edit:
* {{SITENAME}}/Top section
* {{SITENAME}}/Flex section
* {{SITENAME}}/Bottom section
This is a basic responsive front page design that adapts to the available width of the browser by
rearranging the sections themselves as well as content within each section. When narrow, the three sections
line up vertically in a single column. When wide enough, the middle (flex) section is pulled out to become a
right column.
Much of the layout and appearance is determined through styles defined in these pages:
* MediaWiki:Common.css (for the desktop view)
* MediaWiki:Mobile.css (for the mobile view)
-->
<div id="fp-2column" class="fp-container">
<div id="fp-top" class="fp-section">
{{:{{SITENAME}}/Top section}}
</div>
<div id="fp-flex" class="fp-section">
{{:{{SITENAME}}/Flex section}}
</div>
<div id="fp-bottom" class="fp-section">
{{:{{SITENAME}}/Bottom section}}
</div>
</div>
<div class="nomobile" style="text-align: right; margin-right: 10px;"><small>Main page sections: [[{{SITENAME}}/Top section|Top]] · [[{{SITENAME}}/Flex section|Flex]] · [[{{SITENAME}}/Bottom section|Bottom]]. Changes for the main page can be proposed [[Talk:{{SITENAME}}|here]]. </small></div>
<metadesc>The official community maintained wiki resource for Trailmakers!</metadesc>
__NOTITLE__
[[Category:{{SITENAME}}| ]]
63dbdad7171c7cd3e29d7b777a7bb8a15d80f127
Template:FP link
10
54
354
353
2021-10-19T12:56:33Z
Encredechine
17946
template update
wikitext
text/x-wiki
<onlyinclude><includeonly><div class="fplink-outer plainlinks {{#switch:{{lc:{{{width|}}}}}|wide=fplink-wide|full=fplink-fullwidth}}">
<div class="fplink {{#switch:{{{plain|}}}|yes|true|1=fplink-plain}}">
{{#if:{{{image|}}}|<div class="fplink-inner {{#ifexist:Media:{{{image|}}}||nomobile}}">{{#ifexist:Media:{{{image|}}}
|[[File:{{{image|}}}|150x150px|link={{#if:{{{url|}}}
|{{{url|}}}
|{{{1|}}}
}}]]
|[[File:{{{image|}}}|Please upload an image]]
}}
</div>
}}{{#switch:{{#if:{{{image|}}}|{{{imageonly|}}}|}}
|yes|true|1=
|#default=<div class="fplink-inner">{{#if:{{{url|}}}
|{{#if:{{{1|}}}
|[{{{url}}} {{{1}}}]
|[{{{url}}}]
}}
|{{#if:{{{1|}}}
|{{#if:{{{2|}}}
|[[{{{1}}}|{{{2}}}]]
|[[{{{1}}}]]
}}
}}
}}
</div>
}}
</div>
</div></includeonly></onlyinclude><noinclude>
{{doc}}
[[Category:Formatting templates]]
</noinclude>
67bd26fe1a69f0d4c18c57aced87b1872d5a2194
Trailmakers Wiki/Top section
0
48
334
333
2021-10-19T13:01:00Z
Encredechine
17946
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Welcome box-->
<div class="welcome">Welcome to the Official [[File:TrailmakersLogo.png|150px|link=|Trailmakers]] Wiki!</div>
<div>the ''Trailmakers'' guide written and maintained by the community.</div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].
Please feel free to contribute by creating new articles or expanding existing ones.
</div><!--END Welcome box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Description box-->
<div class="heading">About Trailmakers</div>
<div style="text-align: left;">
[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
</div>
</div><!--END Description box-->
<div class="fpbox" id="fproles" style="text-align: center;"><!-- BEGIN Content box-->
<div class="heading">Quick Links</div>
<div class="fplinks"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div>
</div><!-- END Heading A box--><noinclude>[[Category:Front page sections]]</noinclude>
d9f1e78e3358e620ad0585537d2d3bd6b4d8e709
Trailmakers Wiki/Bottom section
0
46
318
317
2021-10-19T13:01:48Z
Encredechine
17946
section update
wikitext
text/x-wiki
<div class="fpbox mobilecollapsible expanded" id="fpwiki" style="text-align: center;">
<div class="heading mobileonly mobileleft">Wiki</div>
<div class="body">
<div class="linkslabel">Help Wiki</div>
<div class="fplinks"><!--
-->{{FP link|gphelp:Contents|General Help|size=wide}}<!--
-->{{FP link|gphelp:Getting Started|Getting Started|size=wide}}<!--
-->{{FP link|gphelp:Editing pages|Editing pages|size=wide}}<!--
-->{{FP link|gphelp:Starting a new page|New pages|size=wide}}<!--
-->{{FP link|gphelp:Moving a page|Moving pages|size=wide}}<!--
-->{{FP link|gphelp:Basic images|Basic images|size=wide}}<!--
-->{{FP link|gphelp:Links|Links|size=wide}}<!--
--></div>
<div class="linkslabel">Community</div>
<div class="fplinks"><!--
-->{{FP link|Special:UserLogin/signup|Register|size=wide}}<!--
-->{{FP link|Project:Community portal|How to help|size=wide}}<!--
--></div>
----
<div class="nomobile">
<div>To write a new article, just enter the article title in the box below or in the search box at the top of the page.</div>
<inputbox>
type=create
break=no
</inputbox>
----
<div style="text-align: left;">
* '''Adding content'''
** If you are unsure of what to do or how to create a page, search for a few articles on the same topic and see what they look like. You can always view the source code in a wiki and learn from what others have done.
** An edit doesn't have to be massive; if you feel you don't want to create whole articles, then just fixing spelling errors and broken links is enough.
</div>
</div>
</div>
</div><!--END Wiki box--><noinclude>[[Category:Front page sections]]</noinclude>
48f4ba82d798cc74a1b2d81344c6dce51519949e
Main Page
0
1
1
2021-11-29T15:17:56Z
MediaWiki default
0
wikitext
text/x-wiki
<strong>MediaWiki has been installed.</strong>
Consult the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents User's Guide] for information on using the wiki software.
== Getting started ==
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Configuration settings list]
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ]
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Localise MediaWiki for your language]
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Learn how to combat spam on your wiki]
5702e4d5fd9173246331a889294caf01a3ad3706
Mini-Thuster
0
29
177
2021-12-13T19:07:13Z
Kitenofs
397974
Created page with "== Mini-Thruster == {| class="fandom-table" |+ !Powercores | | | |- !Engine power | | | |- !Engine power | | | |- | | | | |}"
wikitext
text/x-wiki
== Mini-Thruster ==
{| class="fandom-table"
|+
!Powercores
|
|
|
|-
!Engine power
|
|
|
|-
!Engine power
|
|
|
|-
|
|
|
|
|}
dfab85cc1a7dd8915623d007d459ddd96d60a01c
178
177
2021-12-13T19:12:09Z
Kitenofs
397974
/* Mini-Thruster */
wikitext
text/x-wiki
== Mini-Thruster ==
(This page is unfinished)
{| class="fandom-table"
|+
|-
!Weight
| colspan="3" |
|-
!Powercores
| colspan="3" |1
|-
!Engine power
| colspan="3" |
|}
1a8a6de60b576099612a19b9369e2bec79dfb3f4
179
178
2021-12-13T19:14:03Z
Kitenofs
397974
/* Mini-Thruster */
wikitext
text/x-wiki
== Mini-Thruster ==
(This page is unfinished)
{| class="fandom-table"
|+
|-
!Weight
| colspan="3" |
|-
![[Power cores]]
| colspan="3" |1
|-
!Engine power
| colspan="3" |
|}
f76dfe30969d0181a9dc76cbbbb31602e77dbd30
Propeller Blocks
0
32
206
205
2022-01-06T17:47:25Z
188.228.84.176
0
Adding categories
wikitext
text/x-wiki
"Note" All of this is outdated
[[Category:Hhhhhh]]
c65dc803fa861a63cca425318b53cece8f743f3e
Blocks
0
6
20
19
2022-01-18T16:01:45Z
ChaoticEnergy08
396108
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Propulson blocks===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*Engine Blocks
*Hover Blocks
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
[[Mechanical Blocks]] can move to give functionality to a vehicle.
===Aerodynamic blocks===
[[Aerodynamic Blocks]] allow air to pass around them more easily, resulting in higher top speeds.
=== Logic Blocks ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
5b8f5e26dcf80d0249d6b07924488a1381a17390
21
20
2022-01-18T16:02:04Z
ChaoticEnergy08
396108
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===Propulsion blocks===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*Engine Blocks
*Hover Blocks
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===Mechanical blocks===
[[Mechanical Blocks]] can move to give functionality to a vehicle.
===Aerodynamic blocks===
[[Aerodynamic Blocks]] allow air to pass around them more easily, resulting in higher top speeds.
=== Logic Blocks ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
b37dd13e5435ac86cafb24e45dcb557f0df81b1e
22
21
2022-03-09T05:25:42Z
Tuyeriuy
396109
/* Aerodynamic blocks */
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===[[Propulsion blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*Engine Blocks
*Hover Blocks
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===[[Mechanical Blocks|Mechanical blocks]]===
[[Mechanical Blocks]] can move to give functionality to a vehicle.
===[[Aerodynamic Blocks|Aerodynamic blocks]]===
[[Aerodynamic Blocks]] allow air to pass around them more easily, resulting in higher top speeds.
=== [[Logic Blocks]] ===
[[Logic Blocks]] provide output when certain logical conditions are met.
[[Category:Trailmakers]]
d7bede3761c04d7badbf7c3e982f455b862c16b2
23
22
2022-03-09T05:27:05Z
Tuyeriuy
396109
/* Aerodynamic blocks */
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===[[Propulsion blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*Engine Blocks
*Hover Blocks
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===[[Mechanical Blocks|Mechanical blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks|Aerodynamic blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
=== [[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
7e593e3ddc1258779b5d4047b7f4202a1665cd33
24
23
2022-05-27T15:44:21Z
80.219.174.6
0
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===[[Propulsion blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*Engine Blocks
*Hover Blocks
*[[Mini-Thuster|Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===[[Mechanical Blocks|Mechanical blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks|Aerodynamic blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
=== [[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
bc314c8b37ab4c8172acf4f1f4365be65e13006d
25
24
2022-09-11T07:45:56Z
185.243.187.121
0
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Everything you [[Building|build]] is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===[[Propulsion blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]]
*Hover Blocks
*[[Mini-Thuster|Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===[[Mechanical Blocks|Mechanical blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks|Aerodynamic blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
7160112a600271187db0670300b4003552a392af
26
25
2022-12-02T16:31:45Z
99.16.86.19
0
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===[[Propulsion blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]]
*Hover Blocks
*[[Mini-Thuster|Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===[[Mechanical Blocks|Mechanical blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks|Aerodynamic blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
5c52844959a50dfb71e5641e0691ead0e27e24d5
27
26
2023-04-03T18:55:24Z
RowanBee
396110
fixed the thruster blocks link
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===[[Propulsion blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]]
*Hover Blocks
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===[[Mechanical Blocks|Mechanical blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks|Aerodynamic blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
95acd257bcc62d579094c6d4bf986ce820352ba0
Power cores
0
31
197
196
2022-01-18T16:03:58Z
ChaoticEnergy08
396108
wikitext
text/x-wiki
[[Power Cores]] will appear when you place [[Propulsion blocks]] as an indicator of the power of your vehicle. Propulsion blocks are not the only block that require Power Cores, as gadgets such as the Tractor Beam and Cannons require them as well.
In the Racing gamemode, vehicles are rated based on the amount of cores they use. Vehicles with similar amount of cores are put into their respective leagues for each race, such that different leagues have different leaderboards for each racetrack.
{| class="wikitable"
|+Power Core Leagues
!League
!Power Cores
!
!
|-
|Bionic League
|0
|
|
|-
|Gokart League
|1
|
|
|-
|
|2-5
|
|
|}
In the Stranded in Space Campaign gamemode, Power Cores serve as a limiting factor to the power of your vehicle. You have a limited amount of power cores to use, which can be increased by collecting certain scrap found around the map.
Each propulsion block has a power core requirement, which differs depending on the power of the block.
{| class="wikitable"
|+Engine Block Power Core Requirements
!Block
!Power Core Requirement
|-
|Bulldog Engine
|1
|-
|RAW Engine
|2
|-
|Dragon Engine
|3
|-
|Mini Thruster
|1
|-
|RAW Thruster
|2
|-
|Dragon Thruster
|3
|-
|Gimbal Jet
|1
|-
|Hover Block
|1
|-
|Helicopter Engine V1
|1
|-
|Helicopter Engine V2
|1
|}
Many of the gadgets also require power cores to function.
{| class="wikitable"
|+
!Block
!Power Core Requirement
|-
|Electromagnet
|1
|-
|Small Cannon
|1
|-
|Large Cannon
|3
|-
|Tank Cannon
|3
|-
|Dynamite
|1
|}
9b5a2221d9ea9524063b9cd16624c8fa6aaacd66
198
197
2022-10-24T22:38:53Z
Randomness777
397977
wikitext
text/x-wiki
[[Power Cores]] will appear when you place [[Propulsion blocks]] as an indicator of the power of your vehicle. Propulsion blocks are not the only block that require Power Cores, as gadgets such as the Tractor Beam and Cannons require them as well.
In the Racing gamemode, vehicles are rated based on the amount of cores they use. Vehicles with similar amount of cores are put into their respective leagues for each race, such that different leagues have different leaderboards for each racetrack.
{| class="wikitable"
|+Power Core Leagues
!League
!Power Cores
!
!
|-
|Bionic League
|0
|
|
|-
|Gokart League
|1
|
|
|-
|
|2-5
|
|
|}
In the Stranded in Space Campaign gamemode, Power Cores serve as a limiting factor to the power of your vehicle. You have a limited amount of power cores to use, which can be increased by collecting certain scrap found around the map.
Each propulsion block has a power core requirement, which differs depending on the power of the block.
{| class="wikitable"
|+Engine Block Power Core Requirements
!Block
!Power Core Requirement
|-
|Bulldog Engine
|1
|-
|RAW Engine
|2
|-
|Dragon Engine
|3
|-
|Mini Thruster
|1
|-
|RAW Thruster
|2
|-
|Dragon Thruster
|3
|-
|Gimbal Jet
|1
|-
|Hover Block
|1
|-
|Helicopter Engine V1
|1
|-
|Helicopter Engine V2
|1
|}
Many of the gadgets also require power cores to function.
{| class="wikitable"
|+
!Block
!Power Core Requirement
|-
|Tractor Beam
|1
|-
|Small Cannon
|1
|-
|Large Cannon
|3
|-
|Tank Cannon
|3
|-
|Dynamite
|1
|}
43f3dde789a8f5d5b9e0534e8912a9ec26277b2d
Game Modes
0
20
109
108
2022-02-05T05:11:19Z
185.7.230.31
0
Removed "(broken)" as that is an opinion and uninformative.
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Campaign Mode: Stranded in Space==
After your spacecraft crashes on an unknown alien world, you must gather salvage from across the vast map in order to build a spaceship to fly home. Dive into the depths of the ocean, Fly into a volcano, the world is your oyster in this open-ended survival adventure.
== Multi-player ==
There are two modes in Multi-player. The first is Sandbox mode, and the next is the PvP mode. When customizing the server, you have loads of options. There are two different maps at this point. The first one
==== Sandbox ====
This mode allows the server to have unlimited power cores, and the ability to build whatever you want. Just be careful how big your creations are because the bigger they are the laggier the game is.
==== PvP ====
PvP is the place where you get to test out your creations. You can battle others in the fight for time and the specter bolt. The person who holds the bolt the longest wins.
[[Category:Trailmakers]]
[[Category:Game Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
de71b2f414e70ef96d76de7240d46606174f2dfe
110
109
2022-05-02T13:20:33Z
FlashbulbMikkel
397969
I updated the text to reflect which game modes are available & describe them.
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Campaign Mode: Stranded in Space==
After your spacecraft crashes on an unknown alien world, you must gather salvage from across the vast map in order to build a spaceship to fly home. Dive into the depths of the ocean, Fly into a volcano, the world is your oyster in this open-ended survival adventure.
<br />
== Campaign Mode: Rally ==
Learn the basics of racing in Trailmakers. You will learn how to build various kinds of vehicles, and steadily take on more challenges as you progress in this campaign. Once you've completed the campaign, take on the global leaderboards against the worldwide community of Trailmakers!
<br />
== Campaign: High Seas (DLC) ==
High Seas is the first expansion for Trailmakers, in which you play on a sandbox map with expanded physics - there's wind, weather and waves to contend with, as you try to find all the collectible artifacts and treasure chests.
<br />
== Race Island ==
Compete with your friends in Time Trials, or to become the top player on our global leaderboards!
== Sandbox Maps ==
There are currently 4 sandbox maps you can play in with your friends in Trailmakers:
'''Treasure Island'''
You can solve treasure hunts and play your own way on Treasure Island.
'''Danger Zone'''
Live out your daredevil daydreams on the Danger Zone map, and pull off stunts on the ramps, halfpipes and other obstacles!
'''Test Zone'''
If you're looking for a blank slate to build your creations in, this is the map for you. Challenge yourself and your friends in an environment free of obstacles.
'''High Seas'''
Test your mettle as sailors in the first expansion to Trailmakers, or challenge your piloting skills against the winds on the High Seas.
== Multiplayer ==
Trailmakers can (at the time of writing) be played by up to four players in multiplayer in all modes but Rally.
[[Category:Trailmakers]]
[[Category:Game Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
8a6c81685195d69a958e68b5283b6b55401b58ad
111
110
2022-10-23T15:11:39Z
Acecerak of Almanach
397970
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Campaign Mode: Stranded in Space==
After your spacecraft crashes on an unknown alien world, you must gather [[salvage]] from across the vast map in order to build a spaceship to fly home. Dive into the depths of the ocean, fly into a volcano, the world is your oyster in this open-ended survival adventure.
<br />
== Campaign Mode: Rally ==
Learn the basics of racing in Trailmakers. You will learn how to build various kinds of vehicles, and steadily take on more challenges as you progress in this campaign. Once you've completed the campaign, take on the global leaderboards against the worldwide community of Trailmakers!
<br />
== Campaign: High Seas (DLC) ==
High Seas is the first expansion for Trailmakers, in which you play on a sandbox map with expanded physics - there's wind, weather and waves to contend with, as you try to find all the collectible artifacts and treasure chests.
<br />
== Race Island ==
Compete with your friends in Time Trials, or to become the top player on our global leaderboards!
== Sandbox Maps ==
There are currently 4 sandbox maps you can play in with your friends in Trailmakers:
* '''Treasure Island'''
You can solve treasure hunts and play your own way on Treasure Island.
* '''Danger Zone'''
Live out your daredevil daydreams on the Danger Zone map, and pull off stunts on the ramps, halfpipes and other obstacles!
* '''Test Zone'''
If you're looking for a blank slate to build your creations in, this is the map for you. Challenge yourself and your friends in an environment free of obstacles.
* '''High Seas'''
Test your mettle as sailors in the first expansion to Trailmakers, or challenge your piloting skills against the winds on the High Seas.
== Multiplayer ==
Trailmakers can (at the time of writing) be played by up to four players in multiplayer in all modes but Rally.
[[Category:Trailmakers]]
[[Category:Game Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
72f6d62c8dd1f2785f3e4020ebd82e07728696d6
Template:Doc
10
90
431
2022-02-14T14:41:06Z
{{Infocard}}>Westgrass
0
{{language info}} en=?
wikitext
text/x-wiki
<includeonly><!--
// localization info is autoloaded from Template:Doc/l10n
--><div class="documentation"><!--
--><div class="documentation_header"><!--
-->[[File:Template-{{#ifexist:Template:{{{1|{{PAGENAME}}}}}/{{l10n|doc|doc_subpage}}|{{#if:{{{baddoc|}}}|bad}}|no}}info.svg|50px|link=]] <!--
--><span style="font-weight: bold; font-size: 125%; margin-right: 10px;">{{l10n|doc|documentation}}</span> <!--
-->{{#ifeq:{{SUBPAGENAME}}|{{l10n|doc|doc_subpage}}|<!--nothing-->|<!--
-->{{#ifexist:Template:{{{1|{{PAGENAME}}}}}/{{l10n|doc|doc_subpage}}|<!--
--><span style="font-size: 90%; font-style: italic;"><!--
-->{{l10n|doc|text<!--
-->|$page$=[[{{ns:Template}}:{{ucfirst:{{{1|{{PAGENAME}}}}}}}/{{l10n|doc|doc_subpage}}]]<!--
-->|$edit$={{fullurl|{{FULLPAGENAMEE:Template:{{{1|{{PAGENAME}}}}}}}/{{l10n|doc|doc_subpage}}|action=edit|text={{l10n|doc|edit}}}}<!--
-->|$history$={{fullurl|{{FULLPAGENAMEE:Template:{{{1|{{PAGENAME}}}}}}}/{{l10n|doc|doc_subpage}}|action=history|text={{l10n|doc|history}}}}<!--
-->}}<!--
--></span><!--
-->}}<!--
-->}}<!--
--><div style="float: right; margin-left: 5px;"><!--
-->[{{fullurl|{{FULLPAGENAMEE}}|action=purge|text={{l10n|doc|purge}}}}]<!--
--></div><!--
--></div><!--
-->{{#if:{{l10n|doc|direct_to_en}}|{{dablink|{{l10n|doc|direct_to_en|$link_to_en$=[[:en:Template:{{PAGENAME}}|Template:{{PAGENAME}}]]}}}}}}<!-- leave line break here -->
<!--
-->{{#ifexist:Template:{{{1|{{PAGENAME}}}}}/{{l10n|doc|doc_subpage}}|<!--
-->{{#if:{{{baddoc|}}}|<!--
-->{{doc/baddoc message|issues={{{baddoc}}}}}<!--
-->{{Category|{{l10n|doc|cate_baddoc}}}}<!--
-->}}<!-- leave line break here -->
<!-- -->{{Template:{{{1|{{PAGENAME}}}}}/{{l10n|doc|doc_subpage}}|{{{1|}}}}}<!--
-->|<!--
-->{{l10n|doc|createdoc_text<!--
-->|$link$={{fullurl|{{FULLPAGENAMEE:Template:{{{1|{{PAGENAME}}}}}}}/{{l10n|doc|doc_subpage}}|action=edit|preload=Template:Doc/preload|text={{l10n|doc|createdoc_linktext}}}}<!--
-->}}<!--
-->{{Category|{{l10n|doc|cate_nodoc}}}}<!--
-->}}<!-- leave line break here -->
<!-- --><div style="margin: 15px 0 0 0"><!--
-->{{#ifeq:{{SUBPAGENAME}}|{{l10n|doc|doc_subpage}}|<!--
-->{{#ifeq:{{BASEPAGENAME}}|Doc|<!--nothing-->|<!-- only if page is not Template:Doc
-->{{l10n|doc|thisisdoc_text}}<!--
-->{{Category|{{l10n|doc|cate_doctemplates}}|{{BASEPAGENAME}}}}{{Category|{{l10n|doc|cate_baddoc}}}}<!--
-->}}<!--
-->}}<!--
--></div><!--
--></div><!--
--></includeonly><!--
--><noinclude>{{i18n-ready}}{{doc}}
{{category|Template documentation| }}
{{language info|en=Template:Doc}}
</noinclude>
7c4216044658c20334742e9592c2fddadb81759f
Template:Infocard/initOptions
10
82
415
2022-02-22T16:20:56Z
{{Infocard}}>Westgrass
0
wikitext
text/x-wiki
<includeonly><!--
-->{{options/init|infocard<!--
-->|key:size=250px<!--
-->|alias:cardsize=size<!--
-->|alias:minicardsize=size<!--
-->|key:class=<!--
-->|key:css=<!--
-->|alias:style=css<!--
-->|key:color=<!--
-->|key:theme=<!--
-->|key:box-css=<!--
-->|alias:box-style=box-css<!--
-->|key:box-class=<!--
-->}}<!--
--></includeonly><!--
--><noinclude>{{options subtemplate}}
{{language info|en=Template:Infocard/initOptions}}
</noinclude>
be81a52038015af290e88061f13056213182a26c
How to play guide for Trailmakers
0
23
145
144
2022-05-02T13:03:23Z
FlashbulbMikkel
397969
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic Gameplay==
You can either start by playing the Stranded in Space campaign, or the Rally campaign.
In Stranded in Space, you need to collect salvage from around the map to unlock blocks, in order to build a rocket to escape the planet on which you've crashlanded.
In Rally, you will learn to build various kinds of vehicles, and race them.
==Controls==
The Controls are simple. You can use the mainstream, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press B, and the same to get out.
==Tips and Tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Pseudo-weight (downforce, aka spoilers)
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy then their less traction based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal) this is due to how they are evaluated by the physics engine
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable and won’t fall over
*#
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
4e940f7b05264a92c187164079f590464f4af427
Template:Extension DPL
10
2
387
2022-07-08T20:11:27Z
{{Infocard}}>Rye Greenwood
0
Made the description clearer. The term "anchor page" alone doesn't explain what the point of this template is.
wikitext
text/x-wiki
<noinclude>This template is automatically transcluded whenever [[mw:Extension:DynamicPageList|Extension:DynamicPageList (DPL)]] is invoked, although it does not produce any output. Its sole purpose is to provide a list of pages that invoke DPL: [[Special:WhatLinksHere/Template:Extension DPL]].
[[Category:Extension templates]]
{{language info|en=Template:Extension DPL}}
</noinclude>
3995efc84e0abd076c5700bb83788f1e3390642e
2
2022-12-18T00:55:51Z
DynamicPageList3 extension
44285
Autogenerated DPL's necessary template for content inclusion
wikitext
text/x-wiki
<noinclude>This page was automatically created. It serves as an anchor page for all '''[[Special:WhatLinksHere/Template:Extension_DPL|invocations]]''' of [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:DynamicPageList3 Extension:DynamicPageList3].</noinclude>
087ffd4625ae7b1fea3436ec3f929e82ee739d29
Template:Transform
10
86
423
2022-08-09T02:59:05Z
{{Infocard}}>Rye Greenwood
0
Moved template categorization here from documentation subtemplate.
wikitext
text/x-wiki
<includeonly><!--
// assemble a string of transformations by iterating over all parameters in order
-->{{#vardefine:transform:style|<!--
-->{{#forargs:|parametername|parametervalue|<!--
-->{{#switch:{{#var:parametername}}<!--
-->|flip= scaleY(-1)<!--
-->|mirror= scaleX(-1)<!--
-->|rotation= rotate({{#var:parametervalue}}deg)<!--
-->|scale= scale({{#var:parametervalue}},{{#var:parametervalue}})<!--
-->}}<!--
-->}}<!--
-->}}<!--
// output
--><div style="{{{style|}}}; display: {{{display|inline-block}}}; -moz-transform: {{#var:transform:style}}; -ms-transform: {{#var:transform:style}}; -o-transform: {{#var:transform:style}}; -webkit-transform: {{#var:transform:style}}; transform: {{#var:transform:style}}">{{{1}}}</div><!--
--></includeonly><noinclude>{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:Transform}}
</noinclude>
7ef19129fe94dc16aca965453bf6dec4a7aa8160
Thruster Blocks
0
43
277
276
2022-08-15T09:40:31Z
139.218.117.199
0
Nothing much
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
*[[Mini-Thuster|Mini-Thruster]]
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
While most engines are powerful the mini thruster is the only exception
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 78.57167kg (more precise)
|}
To create neutral buoyancy using gimbals, the ratio is 0.012727 gimbal power per kilogram.
5f2cb1fa7620960e894f1fd52dabee3aca9b7882
278
277
2023-01-11T19:20:31Z
99.27.71.74
0
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
*[[Mini-Thuster|Mini-Thruster]]
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
While most engines are powerful the mini thruster is the only exception
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 78.57167kg (more precise)
|}
To create neutral buoyancy using gimbals, the ratio is precisely 0.01245674740481 gimbal power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater then 1 then divide it until it's less then 1 and for every divide you need to a gimble jet and set it to the value that the function is outputting.
aeb15a1471cf5ee38296b8012c6084cabce99d9d
279
278
2023-02-20T02:33:49Z
73.248.105.235
0
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
*[[Mini-Thuster|Mini-Thruster]]
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
While most engines are powerful the mini thruster is the only exception
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 78.57167kg (more precise)
|}
To create neutral buoyancy using gimbals, the ratio is precisely 0.01245674740481 gimbal power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater then 1 then divide it until it's less then 1 and for every divide you need to a gimble jet and set it to the value that the function is outputting.
Interestingly, the RAW Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the RAW Jet only has a 50% uptime, according to testing done by user "Manchweld"
18c0539121c22eed556e03124a044aae4df54bc3
280
279
2023-02-20T02:41:36Z
73.248.105.235
0
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
*[[Mini-Thuster|Mini-Thruster]]
* Dragon Jet Engine
* RAW Jet Engine
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
While most engines are powerful the mini thruster is the only exception
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet Engine
| 300
|-
| RAW Jet Engine
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet Engine
| 106.7kg
|-
| RAW Jet Engine
| 268.4kg
|-
| Gimbal Jet
| 78.57167kg (more precise)
|}
To create neutral buoyancy using gimbals, the ratio is precisely 0.01245674740481 gimbal power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater then 1 then divide it until it's less then 1 and for every divide you need to a gimble jet and set it to the value that the function is outputting.
Interestingly, the RAW Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the RAW Jet only has a 50% uptime, according to testing done by user "Manchweld"
Additional testing on the RAW Jet has revealed that after overheating, it has doubled cooling meaning that the consistent uptime is about 33% without overheating. This still gives it more power than it's power core equivalent of two mini-thrusters.
2e18461041b1c197582020c6aca1ce68c29560d4
Mini-Thuster
0
29
180
179
2022-09-11T07:23:04Z
185.243.187.121
0
wikitext
text/x-wiki
== Mini-Thruster ==
(This page is unfinished)
{| class="fandom-table"
|+
|-
!Weight
| colspan="3" |9.4 kg
|-
![[Power cores]]
| colspan="3" |1
|-
!Engine power
| colspan="3" |333
|}
1c889d54a3fa3651ade78aa15fbf9275d0a7f6c0
181
180
2022-09-11T07:25:26Z
185.243.187.121
0
wikitext
text/x-wiki
== Mini-Thruster ==
(This page is unfinished)
{| class="fandom-table"
|+
|-
!Weight
| colspan="3" |9.8 kg
|-
![[Power cores]]
| colspan="3" |1
|-
!Engine power
| colspan="3" |80
|}
bdf82578e5e1adaa4c2c36ee4ae087a52e034f75
182
181
2023-04-03T18:47:57Z
RowanBee
396110
Added more thrusters
wikitext
text/x-wiki
== Mini-Thruster ==
{| class="fandom-table"
|+Engine Data
|-
![[Power cores]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|}
A small and cheap jet engine with low thrust.
== RAW Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!2
|-
|Weight
|53.1 kg
|-
|Power
|750
|-
|Dimensions
|2 x 5 x 2
|}
A very powerful jet engine with a cooldown.
== Dragon Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!3
|-
|Weight
|30 kg
|-
|Power
|300
|-
|Dimensions
|2 x 3 x 2
|}
A very powerful jet engine that does not overheat.
== Gimbal Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|9.4 kg
|-
|Dimensions
|2 x 2 x 1
|}
A jet that always fires downwards.
38ca1353e1ca1ac4713bec1ceb6cc5d107a31991
183
182
2023-04-03T18:54:41Z
RowanBee
396110
noticed that the "thruster blocks" link in blocks links here, didnt know there was a proper page
wikitext
text/x-wiki
== Mini-Thruster ==
{| class="fandom-table"
|+Engine Data
|-
![[Power cores]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|}
A small and cheap jet engine with low thrust.
3d35373c72f47b0a2402426b771a4e0d63cdec33
Engine Blocks
0
18
83
2022-09-11T07:43:14Z
185.243.187.121
0
Created page with "==Bulldawg-Engine== {| class="wikitable" |+ Engine Data |- | Power Cores || 1 |- | Weight || 9.4 kg |- | Power || 333 |- | Dimensions || 2 x 2 x 1 |} High acceleration, low maximum velocity ==RAW-Engine== {| class="wikitable" |+ Engine Data |- | Power Cores || 2 |- | Weight || 59.6 kg |- | Power || 1700 |- | Dimensions || 2 x 4 x 2 |} Low acceleration, high maximum velocity ==Dragonengine== {| class="wikitable" |+ Engine Data |- | Power Cores || 3 |- | Weight || 25..."
wikitext
text/x-wiki
==Bulldawg-Engine==
{| class="wikitable"
|+ Engine Data
|-
| Power Cores || 1
|-
| Weight || 9.4 kg
|-
| Power || 333
|-
| Dimensions || 2 x 2 x 1
|}
High acceleration, low maximum velocity
==RAW-Engine==
{| class="wikitable"
|+ Engine Data
|-
| Power Cores || 2
|-
| Weight || 59.6 kg
|-
| Power || 1700
|-
| Dimensions || 2 x 4 x 2
|}
Low acceleration, high maximum velocity
==Dragonengine==
{| class="wikitable"
|+ Engine Data
|-
| Power Cores || 3
|-
| Weight || 25 kg
|-
| Power || 3333
|-
| Dimensions || 2 x 2 x 2
|}
High acceleration, high maximum velocity
396a225ba205feb61db52b4979369a1e485574b7
84
83
2022-11-02T20:11:33Z
85.164.46.55
0
I fixed a spelling isue
wikitext
text/x-wiki
==Bulldawg-Engine==
{| class="wikitable"
|+ Engine Data
|-
| Power Cores || 1
|-
| Weight || 9.4 kg
|-
| Power || 333
|-
| Dimensions || 2 x 2 x 1
|}
High acceleration, low maximum velocity
==RAW-Engine==
{| class="wikitable"
|+ Engine Data
|-
| Power Cores || 2
|-
| Weight || 59.6 kg
|-
| Power || 1700
|-
| Dimensions || 2 x 4 x 2
|}
Low acceleration, high maximum velocity
==Dragon engine==
{| class="wikitable"
|+ Engine Data
|-
| Power Cores || 3
|-
| Weight || 25 kg
|-
| Power || 3333
|-
| Dimensions || 2 x 2 x 2
|}
High acceleration, high maximum velocity
5256f2c6c6c63a997574111804c010f80c8cd6a5
85
84
2022-11-02T20:12:16Z
85.164.46.55
0
wikitext
text/x-wiki
==Bulldawg-Engine==
{| class="wikitable"
|+ Engine Data
|-
| Power Cores || 1
|-
| Weight || 9.4 kg
|-
| Power || 333
|-
| Dimensions || 2 x 2 x 1
|}
High acceleration, low maximum velocity
==RAW-Engine==
{| class="wikitable"
|+ Engine Data
|-
| Power Cores || 2
|-
| Weight || 59.6 kg
|-
| Power || 1700
|-
| Dimensions || 2 x 4 x 2
|}
Low acceleration, high maximum velocity
==Dragon- engine==
{| class="wikitable"
|+ Engine Data
|-
| Power Cores || 3
|-
| Weight || 25 kg
|-
| Power || 3333
|-
| Dimensions || 2 x 2 x 2
|}
High acceleration, high maximum velocity
8a5ea8766189b34ad56827bff3299978a2b915c0
86
85
2023-04-03T18:49:27Z
RowanBee
396110
Spelling and formatting
wikitext
text/x-wiki
==Bulldawg Engine==
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 1
|-
| Weight || 9.4 kg
|-
| Power || 333
|-
| Dimensions || 2 x 2 x 1
|}
High acceleration. Low top speed.
==RAW Engine==
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 2
|-
| Weight || 59.6 kg
|-
| Power || 1700
|-
| Dimensions || 2 x 4 x 2
|}
Low acceleration. High top speed.
==Dragon Engine==
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 3
|-
| Weight || 25 kg
|-
| Power || 3333
|-
| Dimensions || 2 x 2 x 2
|}
High acceleration. High top speed.
847099ab0ae6cc6f458ca3e73646db440b07984b
Template:Options/autodoc
10
91
433
2022-10-16T15:27:56Z
{{Infocard}}>Rye Greenwood
0
+spaces so the syntax highlighters don't get confused
wikitext
text/x-wiki
<includeonly><!--
-->{{#vardefine:options_namespace|{{#or:{{{1|}}}|{{lcfirst:{{ROOTPAGENAME}}}}}}}}<!-- "Chance" for "Template:Chance/doc"
-->{{#vardefine:__FLAG_OPTIONS_AUTODOC__|yes}}<!--
-->{{#ifeq:{{NAMESPACENUMBER}}|10| {{ {{#var:options_namespace}}/initOptions}} }}<!-- autoload
-->{{#ifeq:{{SUBPAGENAME}}|initOptions||
This template supports options through {{tl|options}} template. All valid options are listed below, see {{tl|options}} for usage and other infomation.
See [[Template:{{#var:options_namespace}}/initOptions]] for the initial options setting of this template.
}}
<table class="wikitable"><!--
--><tr><th>Name</th><th>Alias</th><th>Initial Value</th><th>Value Mapping<ref>Values with mapping will be stored and loaded as mapped value. Other values without mapping will be stored and loaded as-is.</ref></th><th>Note</th></tr><!--
-->{{#arrayprint:optionsKeys:{{#var:options_namespace}}||@@@@|<!--
--><tr>{{#var:optionsDoc:@@@@}}</td><td>{{{note_@@@@|}}}</td></tr><!--
-->}}</table><!--
-->{{reflist}}<!--
--></includeonly><noinclude>
Used to auto gen document for options.
See {{tl|options}} for more info. See [[Template:Chance/doc]] for example.
{{language info|en=Template:Options/autodoc}}
</noinclude>
50851aea3140d88c92e4dc64b71803a242b76603
Salvage
0
38
242
2022-10-23T14:30:21Z
Acecerak of Almanach
397970
Created page with "Salvages are entities, which can be collected in the Campaign. They are collected by transporting one to any Recovery Drone, which can be found all over the world."
wikitext
text/x-wiki
Salvages are entities, which can be collected in the Campaign. They are collected by transporting one to any Recovery Drone, which can be found all over the world.
3eccb3f9790b43b2e8553ca0f3620e3090a3a388
243
242
2022-10-23T15:05:49Z
Acecerak of Almanach
397970
wikitext
text/x-wiki
Salvages are entities, which can be collected in the Campaign Game Mode Stranded in Space. They are collected by transporting one to any Recovery Drone, which can be found all over the world.
Spoiler Alert:
They are placed as follows:
{| class="fandom-table"
|+
!Block
!Location
!Altitude
|-
|
|
|
|-
|Raw Jet
|Desert Gate
|129m
|-
|Grid Block 1 x 2
|Howling Peaks
|195m
|-
|Grid Block 1 x 4
|Howling Peaks
|195m
|-
|Wedge 2 x 1
|Howling Peaks
|241m
|-
|Heavy Weight Block
|Howling Peaks
|265m
|}
Powercores can be found here:
{| class="fandom-table"
|+
!Location
!Altitude
|-
|Rosewood
|15m
|-
|Magnet Island
|0m
|-
|
|
|}
f65fac73eff94359b475010e81e09c698fccaed6
244
243
2022-10-23T15:08:09Z
Acecerak of Almanach
397970
wikitext
text/x-wiki
Salvages are entities, which can be collected in the Campaign Game Mode Stranded in Space. They are collected by transporting one to any Recovery Drone, which can be found all over the world.
Spoiler Alert:
They are placed as follows:
{| class="fandom-table"
|+
!Block
![[Locations|Location]]
!Altitude
|-
|
|
|
|-
|Raw Jet
|Desert Gate
|129m
|-
|Grid Block 1 x 2
|Howling Peaks
|195m
|-
|Grid Block 1 x 4
|Howling Peaks
|195m
|-
|Wedge 2 x 1
|Howling Peaks
|241m
|-
|Heavy Weight Block
|Howling Peaks
|265m
|}
Powercores can be found here:
{| class="fandom-table"
|+
![[Locations|Location]]
!Altitude
|-
|Rosewood
|15m
|-
|Magnet Island
|0m
|-
|
|
|}
73737ceec753ffd584d08a2c255736078ff147ed
245
244
2022-10-24T17:37:04Z
Acecerak of Almanach
397970
wikitext
text/x-wiki
Salvages are entities, which can be collected in the Campaign Game Mode Stranded in Space. They are collected by transporting one to any Recovery Drone, which can be found all over the world. They appear in lots of shapes and sizes.
Here is a list.
{| class="fandom-table"
|+
!Type
!Picture
|-
!Small Sphere
!
|-
|Medium Sphere
|
|-
|Large Sphere
|
|-
|Massive Sphere
|
|-
|Small Cube
|
|-
|Large Cube
|
|}
Spoiler Alert:
They are placed as follows:
{| class="fandom-table"
|+
!Block
![[Locations|Location]]
!Altitude
|-
|
|
|
|-
|Raw Jet
|Desert Gate
|129m
|-
|Grid Block 1 x 2
|Howling Peaks
|195m
|-
|Grid Block 1 x 4
|Howling Peaks
|195m
|-
|Wedge 2 x 1
|Howling Peaks
|241m
|-
|Heavy Weight Block
|Howling Peaks
|265m
|-
|Tractor Beam
|Magnet island0
|
|-
|Large Paddle
|Paddle Island
|
|-
|Buoyancy Controller
|Buoy Island
|
|}
Powercores can be found here:
{| class="fandom-table"
|+
![[Locations|Location]]
!Altitude
|-
|Rosewood
|15m
|-
|Magnet Island
|0m
|-
|
|
|}
29fc8c5fef69213a72d0967e1208215157c96292
246
245
2022-10-24T17:46:11Z
Acecerak of Almanach
397970
wikitext
text/x-wiki
Salvages are entities, which can be collected in the Campaign Game Mode Stranded in Space. They are collected by transporting one to any Recovery Drone, which can be found all over the world. They appear in lots of shapes and sizes.
Here is a list.
{| class="fandom-table"
|+
!Type
!Picture
|-
!Small Sphere
![[File:Trailmakers small Salvage-sphere.png|thumb]]
|-
|Medium Sphere
|
|-
|Large Sphere
|[[File:Trailmakers large Salvage-sphere.png|thumb]]
|-
|Massive Sphere
|
|-
|Small Cube
|
|-
|Large Cube
|
|}
Spoiler Alert:
They are placed as follows:
{| class="fandom-table"
|+
!Block
![[Locations|Location]]
!Altitude
|-
|
|
|
|-
|Raw Jet
|Desert Gate
|129m
|-
|Grid Block 1 x 2
|Howling Peaks
|195m
|-
|Grid Block 1 x 4
|Howling Peaks
|195m
|-
|Wedge 2 x 1
|Howling Peaks
|241m
|-
|Heavy Weight Block
|Howling Peaks
|265m
|-
|Tractor Beam
|Magnet island0
|
|-
|Large Paddle
|Paddle Island
|
|-
|Buoyancy Controller
|Buoy Island
|
|}
Powercores can be found here:
{| class="fandom-table"
|+
![[Locations|Location]]
!Altitude
|-
|Rosewood
|15m
|-
|Magnet Island
|0m
|-
|
|
|}
622632b9347273ed1c2d210e564c280a22fcd7b9
247
246
2022-10-25T08:07:03Z
Acecerak of Almanach
397970
wikitext
text/x-wiki
Salvages are entities, which can be collected in the Campaign Game Mode Stranded in Space. They are collected by transporting one to any Recovery Drone, which can be found all over the world. They appear in lots of shapes and sizes.
Here is a list.
{| class="fandom-table"
|+
!Type
!Picture
|-
!Small Sphere
![[File:Trailmakers small Salvage-sphere.png|thumb]]
|-
|Medium Sphere
|
|-
|Large Sphere
|[[File:Trailmakers large Salvage-sphere.png|thumb]]
|-
|Massive Sphere
|
|-
|Small Cube
|
|-
|Large Cube
|
|}
Spoiler Alert:
They are placed as follows:
{| class="fandom-table"
|+
!Block
![[Locations|Location]]
!Altitude
|-
|
|
|
|-
|Raw Jet
|Desert Gate
|129m
|-
|Grid Block 1 x 2
|Howling Peaks
|195m
|-
|Grid Block 1 x 4
|Howling Peaks
|195m
|-
|Wedge 2 x 1
|Howling Peaks
|241m
|-
|Heavy Weight Block
|Howling Peaks
|265m
|-
|Tractor Beam
|Magnet island0
|
|-
|Large Paddle
|Paddle Island
|
|-
|Buoyancy Controller
|Buoy Island
|
|-
|Tube 1 x 1
|Pine Island
|66m
|-
|Tube 1 x 3
|Pine Island
|73m
|-
|Tube 1 x 8
|Pine Island
|69m
|-
|Tube Tee
|Pine Island
|68m
|-
|Tube Cross
|Pine Island
|58m
|-
|Tube Double Tee
|Pine Island
|84m
|-
|Tube Double Cross
|Pine Island
|86m
|-
|Tube Slope 1 x 1 x 2
|Pine Island
|88m
|-
|Tube Tee Cross
|Pine Island
|84m
|-
|Cockpit
|Pine Island
|77m
|}
Powercores can be found here:
{| class="fandom-table"
|+
![[Locations|Location]]
!Altitude
|-
|Rosewood
|15m
|-
|Magnet Island
|0m
|-
|
|
|}
1992af14322526132c1e308d6e2e3a9a3cbde142
248
247
2022-10-25T08:45:26Z
Acecerak of Almanach
397970
wikitext
text/x-wiki
Salvages are entities, which can be collected in the Campaign Game Mode Stranded in Space. They are collected by transporting one to any Recovery Drone, which can be found all over the world. They appear in lots of shapes and sizes.
Here is a list.
{| class="fandom-table"
|+
!Type
!Picture
|-
!Small Sphere
![[File:Trailmakers small Salvage-sphere.png|thumb]]
|-
|Medium Sphere
|
|-
|Large Sphere
|[[File:Trailmakers large Salvage-sphere.png|thumb]]
|-
|Massive Sphere
|
|-
|Small Cube
|
|-
|Large Cube
|
|}
Spoiler Alert:
They are placed as follows:
{| class="fandom-table"
|+
!Block
![[Locations|Location]]
!Altitude
|-
|
|
|
|-
|Raw Jet
|Desert Gate
|129m
|-
|Grid Block 1 x 2
|Howling Peaks
|195m
|-
|Grid Block 1 x 4
|Howling Peaks
|195m
|-
|Wedge 2 x 1
|Howling Peaks
|241m
|-
|Heavy Weight Block
|Howling Peaks
|265m
|-
|Tractor Beam
|Magnet island0
|
|-
|Large Paddle
|Paddle Island
|
|-
|Buoyancy Controller
|Buoy Island
|
|-
|Gimbal Jet
|Eye of Karoo
| -22m
|-
|Block 4 x 8
|Eye of Karoo
|74m
|-
|Block 1 x 3
|Eye of Karoo
|64m
|-
|Tube 1 x 1
|Pine Island
|66m
|-
|Tube 1 x 3
|Pine Island
|73m
|-
|Tube 1 x 8
|Pine Island
|69m
|-
|Tube Tee
|Pine Island
|68m
|-
|Tube Cross
|Pine Island
|58m
|-
|Tube Double Tee
|Pine Island
|84m
|-
|Tube Double Cross
|Pine Island
|86m
|-
|Tube Slope 1 x 1 x 2
|Pine Island
|88m
|-
|Tube Tee Cross
|Pine Island
|84m
|-
|Cockpit
|Pine Island
|77m
|}
Powercores can be found here:
{| class="fandom-table"
|+
![[Locations|Location]]
!Altitude
|-
|Rosewood
|15m
|-
|Magnet Island
|0m
|-
|
|
|}
451132eb26f01826ec9d209fdb5d71a23aa80189
249
248
2023-01-25T20:05:27Z
100.40.17.178
0
Shavba
wikitext
text/x-wiki
Salvages are entities, which can be collected in the Campaign Game Mode Stranded in Space. They are collected by transporting one to any Recovery Drone, which can be found all over the world. They appear in lots of shapes and sizes.
Here is a list.
{| class="fandom-table"
|+
!Type
!Picture
|-
!Small Sphere
![[File:Trailmakers small Salvage-sphere.png|thumb]]
|-
|Medium Sphere
|
|-
|Large Sphere
|[[File:Trailmakers large Salvage-sphere.png|thumb]]
|-
|Massive shababshSphere
|
|-
|Small Cube
|
|-
|Large Cube
|
|}
Spoiler Alert:
They are placed as follows:
{| class="fandom-table"
|+
!Block
![[Locations|Location]]
!Altitude
|-
|
|
|
|-
|Raw Jet
|Desert Gate
|129m
|-
|Grid Block 1 x 2
|Howling Peaks
|195m
|-
|Grid Block 1 x 4
|Howling Peaks
|195m
|-
|Wedge 2 x 1
|Howling Peaks
|241m
|-
|Heavy Weight Block
|Howling Peaks
|265m
|-
|Tractor Beam
|Magnet island0
|
|-
|Large Paddle
|Paddle Island
|
|-
|Buoyancy Controller
|Buoy Island
|
|-
|Gimbal Jet
|Eye of Karoo
| -22m
|-
|Block 4 x 8
|Eye of Karoo
|74m
|-
|Block 1 x 3
|Eye of Karoo
|64m
|-
|Tube 1 x 1
|Pine Island
|66m
|-
|Tube 1 x 3
|Pine Island
|73m
|-
|Tube 1 x 8
|Pine Island
|69m
|-
|Tube Tee
|Pine Island
|68m
|-
|Tube Cross
|Pine Island
|58m
|-
|Tube Double Tee
|Pine Island
|84m
|-
|Tube Double Cross
|Pine Island
|86m
|-
|Tube Slope 1 x 1 x 2
|Pine Island
|88m
|-
|Tube Tee Cross
|Pine Island
|84m
|-
|Cockpit
|Pine Island
|77m
|}
Powercores can be found here:
{| class="fandom-table"
|+
![[Locations|Location]]
!Altitude
|-
|Rosewood
|15m
|-
|Magnet Island
|0m
|-
|
|
|}
8a3508f6d5c2f9c695ba55e60bb7b76fe559934f
250
249
2023-01-27T04:28:17Z
122.58.90.49
0
wikitext
text/x-wiki
Salvages are entities, which can be collected in the Campaign Game Mode Stranded in Space. They are collected by transporting one to any Recovery Drone, which can be found all over the world. They appear in lots of shapes and sizes.
Here is a list.
{| class="fandom-table"
|+
!Type
!Picture
|-
!Small Sphere
![[File:Trailmakers small Salvage-sphere.png|thumb]]
|-
|Medium Sphere
|
|-
|Large Sphere
|[[File:Trailmakers large Salvage-sphere.png|thumb]]
|-
|Massive Sphere
|
|-
|Small Cube
|
|-
|Large Cube
|
|}
Spoiler Alert:
They are placed as follows:
{| class="fandom-table"
|+
!Block
![[Locations|Location]]
!Altitude
|-
|
|
|
|-
|Raw Jet
|Desert Gate
|129m
|-
|Grid Block 1 x 2
|Howling Peaks
|195m
|-
|Grid Block 1 x 4
|Howling Peaks
|195m
|-
|Wedge 2 x 1
|Howling Peaks
|241m
|-
|Heavy Weight Block
|Howling Peaks
|265m
|-
|Tractor Beam
|Magnet island0
|
|-
|Large Paddle
|Paddle Island
|
|-
|Buoyancy Controller
|Buoy Island
|
|-
|Gimbal Jet
|Eye of Karoo
| -22m
|-
|Block 4 x 8
|Eye of Karoo
|74m
|-
|Block 1 x 3
|Eye of Karoo
|64m
|-
|Tube 1 x 1
|Pine Island
|66m
|-
|Tube 1 x 3
|Pine Island
|73m
|-
|Tube 1 x 8
|Pine Island
|69m
|-
|Tube Tee
|Pine Island
|68m
|-
|Tube Cross
|Pine Island
|58m
|-
|Tube Double Tee
|Pine Island
|84m
|-
|Tube Double Cross
|Pine Island
|86m
|-
|Tube Slope 1 x 1 x 2
|Pine Island
|88m
|-
|Tube Tee Cross
|Pine Island
|84m
|-
|Cockpit
|Pine Island
|77m
|}
Powercores can be found here:
{| class="fandom-table"
|+
![[Locations|Location]]
!Altitude
|-
|Rosewood
|15m
|-
|Magnet Island
|0m
|-
|
|
|}
451132eb26f01826ec9d209fdb5d71a23aa80189
Locations
0
26
156
2022-10-23T14:31:52Z
Acecerak of Almanach
397970
Created page with "Locations in the [[Game Modes]] Stranded in Space include: * Bullet list The Pillows Launchpad Landing Site Forest Plateau Deepwood Lake Lapis Rosewood Eye of Karoo Brownwood The Reef Tiny Island Paddle Island Buoy Island Magnet Island Dive Island Treasure Pine Island Pine High Desert Gate The Cravasse Dry High The Volcano Fire Tubs Howling Peaks The Slides The Murks Spike Wood Bogwood Dragon Lake"
wikitext
text/x-wiki
Locations in the [[Game Modes]] Stranded in Space include:
* Bullet list
The Pillows
Launchpad
Landing Site
Forest Plateau
Deepwood
Lake Lapis
Rosewood
Eye of Karoo
Brownwood
The Reef
Tiny Island
Paddle Island
Buoy Island
Magnet Island
Dive Island
Treasure
Pine Island
Pine High
Desert Gate
The Cravasse
Dry High
The Volcano
Fire Tubs
Howling Peaks
The Slides
The Murks
Spike Wood
Bogwood
Dragon Lake
c11fd243d6936453a7dc5ce9783562080edba9be
157
156
2022-10-23T14:34:47Z
Acecerak of Almanach
397970
wikitext
text/x-wiki
Locations in the [[Game Modes]] Stranded in Space include:
* Bullet list
*The Pillows
*Launchpad
*Landing Site
*Forest Plateau
*Deepwood
*Lake Lapis
*Rosewood
*Eye of Karoo
*Brownwood
*The Reef
*Tiny Island
*Paddle Island
*Buoy Island
*Magnet Island
*Dive Island
*Treasure Island
*Pine Island
*Pine High
*Desert Gate
*The Cravasse
*Dry High
*The Volcano
*Fire Tubs
*Howling Peaks
*The Slides
*The Murks
*Spike Wood
*Bogwood
*Dragon Lake
57ac1b3326f0f10fd3e8fd9066c6f045458a34f8
158
157
2022-10-23T14:49:35Z
Acecerak of Almanach
397970
wikitext
text/x-wiki
Locations in the [[Game Modes]] Stranded in Space include:
*The Pillows
*Launchpad
*Landing Site
*Forest Plateau
*Deepwood
*Lake Lapis
*Rosewood
*Eye of Karoo
*Brownwood
*The Reef
*Tiny Island
*Paddle Island
*Buoy Island
*Magnet Island
*Dive Island
*Treasure Island
*Pine Island
*Pine High
*Desert Gate
*The Cravasse
*Dry High
*The Volcano
*Fire Tubs
*Howling Peaks
*The Slides
*The Murks
*Spike Wood
*Bogwood
*Dragon Lake
94ed89322a201e5a183280a43a0285b9e9be276a
159
158
2022-10-23T15:09:45Z
Acecerak of Almanach
397970
wikitext
text/x-wiki
Locations in the [[Game Modes|Gamemode]] 'Stranded in Space' include:
*The Pillows
*Launchpad
*Landing Site
*Forest Plateau
*Deepwood
*Lake Lapis
*Rosewood
*Eye of Karoo
*Brownwood
*The Reef
*Tiny Island
*Paddle Island
*Buoy Island
*Magnet Island
*Dive Island
*Treasure Island
*Pine Island
*Pine High
*Desert Gate
*The Cravasse
*Dry High
*The Volcano
*Fire Tubs
*Howling Peaks
*The Slides
*The Murks
*Spike Wood
*Bogwood
*Dragon Lake
bfdf3241c004f1c05acf21cde23f16657a3d3688
Template:(
10
66
379
2022-11-17T10:17:40Z
{{Infocard}}>Westgrass
0
wikitext
text/x-wiki
{{<noinclude>{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:(}}
</noinclude>
2f2d2587b4eda12c8c6ff378c98c2edbd64e92d9
Template:)
10
67
381
2022-11-17T10:18:16Z
{{Infocard}}>Westgrass
0
wikitext
text/x-wiki
}}<noinclude>{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:)}}
</noinclude>
5e249e98c325a5e3f9025504b811d5dc23480722
Template:Reflist
10
78
407
2023-03-10T15:06:07Z
{{Infocard}}>Rye Greenwood
0
Updated from Wikipedia; should be fully backwards-compatible, i.e. no changes in usage. No longer styles the list via inline list-style-type, instead adds a class and the respective styling is done by CSS. Also replaced inline styling from {{column-width}} and {{column-count}} by CSS as well.
wikitext
text/x-wiki
<div class="reflist <!--
-->{{#if:{{{1|}}}{{{colwidth|}}}|reflist-columns references-column-width}} <!--
-->{{#switch:{{{liststyle|{{{group|}}}}}}|upper-alpha|upper-roman|lower-alpha|lower-greek|lower-roman=reflist-{{{liststyle|{{{group}}}}}}}} <!--
-->{{#if:{{{1|}}}|{{#iferror:{{#ifexpr: {{{1|1}}} > 1 }}||{{#switch:{{{1|}}}|1=|2=reflist-columns-2|#default=reflist-columns-3}} }}}}" <!-- end class
-->{{#if: {{{1|}}}<!-- start style -->
| {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }} |style="column-width: {{{1}}};"}}
| {{#if: {{{colwidth|}}}|style="column-width: {{{colwidth}}};"}}
}} <!--
-->{{#if:{{{css|{{{style|}}}}}}|style="{{{css|{{{style|}}}}}}"}}>
{{#tag:references|{{{refs|}}}|group={{{group|}}}|responsive={{#if:{{{1|}}}{{{colwidth|}}}|0|1}}}}</div><noinclude>
{{doc}}
{{category|Extension templates}}
{{language info|en=Template:Reflist}}
</noinclude>
d7391d0b0cc941a0a8276d71f36ebbb71f838726
Dragon Jet
0
17
75
2023-04-03T18:57:13Z
RowanBee
396110
Created page with "== Dragon Jet == {| class="fandom-table" |+Engine Data ![[Power cores|Power Cores]] !3 |- |Weight |30 kg |- |Power |300 |- |Dimensions |2 x 3 x 2 |} A very powerful jet engine that does not overheat."
wikitext
text/x-wiki
== Dragon Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!3
|-
|Weight
|30 kg
|-
|Power
|300
|-
|Dimensions
|2 x 3 x 2
|}
A very powerful jet engine that does not overheat.
43c47ef036de2178c5f1ec6889f64eb8b1ca7800
RAW Jet
0
34
218
2023-04-03T18:58:54Z
RowanBee
396110
Created page with " == RAW Jet == {| class="fandom-table" |+Engine Data ![[Power cores|Power Cores]] !2 |- |Weight |53.1 kg |- |Power |750 |- |Dimensions |2 x 5 x 2 |} A very powerful jet engine with a cooldown."
wikitext
text/x-wiki
== RAW Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!2
|-
|Weight
|53.1 kg
|-
|Power
|750
|-
|Dimensions
|2 x 5 x 2
|}
A very powerful jet engine with a cooldown.
e0a8d83245bf1dde5d935087a5356fe6cbd41443
219
218
2023-04-03T19:01:59Z
RowanBee
396110
added to stubs
wikitext
text/x-wiki
== RAW Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!2
|-
|Weight
|53.1 kg
|-
|Power
|750
|-
|Dimensions
|2 x 5 x 2
|}
A very powerful jet engine with a cooldown.
[[Category:Stubs]]
4a956465fdeb184f307b0b3b30b22c03f2bf870c
220
219
2023-04-03T19:14:38Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== RAW Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!2
|-
|Weight
|53.1 kg
|-
|Power
|750
|-
|Dimensions
|2 x 5 x 2
|}
A very powerful jet engine with a cooldown.
[[Category:Stubs]]
6ed8667c81f0b30ee4498f6f2173e9e28efe4004
221
220
2023-04-03T19:56:00Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== RAW Jet ==
[[File:Raw Jet.png|thumb|Raw Jet]]
A very powerful jet engine with a cooldown.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!2
|-
|Weight
|53.1 kg
|-
|Power
|750
|-
|Dimensions
|2 x 5 x 2
|}
[[Category:Stubs]]
1fd574d1f2c80b60aff18a80747191abb9ce0c31
Gimbal Jet
0
21
113
2023-04-03T18:59:23Z
RowanBee
396110
Created page with " == Gimbal Jet == {| class="fandom-table" |+Engine Data ![[Power cores|Power Cores]] !1 |- |Weight |9.4 kg |- |Dimensions |2 x 2 x 1 |} A jet that always fires downwards."
wikitext
text/x-wiki
== Gimbal Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|9.4 kg
|-
|Dimensions
|2 x 2 x 1
|}
A jet that always fires downwards.
80a1ea3be69d5394a1b965783f76b1516b848bbe
114
113
2023-04-03T19:01:26Z
RowanBee
396110
wikitext
text/x-wiki
== Gimbal Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|9.4 kg
|-
|Dimensions
|2 x 2 x 1
|}
A jet that always fires downwards.
[[Category:Stubs]]
2f08ec4fb8abfaa2b81b3092cec6dd58276ed167
115
114
2023-04-03T19:14:49Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|9.4 kg
|-
|Dimensions
|2 x 2 x 1
|}
A jet that always fires downwards.
[[Category:Stubs]]
2a11fde26cfb9a18df6959220814dd82a2f48477
116
115
2023-04-03T19:58:14Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:Gimbal Jet.png|thumb|Gimbal Jet]]
A jet that always fires downwards.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|9.4 kg
|-
|Dimensions
|2 x 2 x 1
|}
[[Category:Stubs]]
80a7ce0952d09dadd34f06d449ca987ec30e0bf7
117
116
2023-04-30T11:42:36Z
37.8.231.47
0
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:Gimbal Jet.png|thumb|Gimbal Jet]]
A jet that always fires downwards. Can be problematic to use in flying maschines.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|9.4 kg
|-
|Dimensions
|2 x 2 x 1
|}
[[Category:Stubs]]
46dcb2258bab6abb72ffd1db3b491708098516a9
118
117
2023-05-02T18:55:56Z
82.13.172.154
0
A misspelling
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:Gimbal Jet.png|thumb|Gimbal Jet]]
A jet that always fires downwards. Can be problematic to use in flying machines.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|9.4 kg
|-
|Dimensions
|2 x 2 x 1
|}
[[Category:Stubs]]
a013e846d0d7662bb789650c00b8d17f9e32ee99
119
118
2023-05-03T20:44:30Z
149.19.40.212
0
Adding categories
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:Gimbal Jet.png|thumb|Gimbal Jet]]
A jet that always fires downwards. Can be problematic to use in flying machines.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|9.4 kg
|-
|Dimensions
|2 x 2 x 1
|}
[[Category:Stubs]]
[[Category:Thrust]]
863a0fe6f8829e531e291fd5511ffbc28eb935b0
Thruster Blocks
0
43
281
280
2023-04-03T19:01:18Z
RowanBee
396110
spelling and links
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
*[[Mini-Thuster|Mini-Thruster]]
* [[Dragon Jet]]
* [[RAW Jet]]
* [[Gimbal Jet]]
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
While most engines are powerful the mini thruster is the only exception
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet
| 300
|-
| RAW Jet
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet
| 106.7kg
|-
| RAW Jet
| 268.4kg
|-
| Gimbal Jet
| 78.57167kg (more precise)
|}
To create neutral buoyancy using gimbals, the ratio is precisely 0.01245674740481 gimbal power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater then 1 then divide it until it's less then 1 and for every divide you need to a gimbal jet and set it to the value that the function is outputting.
Interestingly, the RAW Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the RAW Jet only has a 50% uptime, according to testing done by user "Manchweld"
Additional testing on the RAW Jet has revealed that after overheating, it has doubled cooling meaning that the consistent uptime is about 33% without overheating. This still gives it more power than it's power core equivalent of two mini-thrusters.
1608a8cc5562a1dd910dddda47e9c5d344cf7704
Dragon Jet
0
17
76
75
2023-04-03T19:02:16Z
RowanBee
396110
added to stubs
wikitext
text/x-wiki
== Dragon Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!3
|-
|Weight
|30 kg
|-
|Power
|300
|-
|Dimensions
|2 x 3 x 2
|}
A very powerful jet engine that does not overheat.
[[Category:Stubs]]
d7b3426f26d151a0d3de417a64d5554651301962
77
76
2023-04-03T19:14:27Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== Dragon Jet ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!3
|-
|Weight
|30 kg
|-
|Power
|300
|-
|Dimensions
|2 x 3 x 2
|}
A very powerful jet engine that does not overheat.
[[Category:Stubs]]
558e246974e51ef747468e381c99712e7e4b8862
78
77
2023-04-03T19:54:08Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== Dragon Jet ==
[[File:Dragon Jet.png|thumb|Dragon Jet]]
A very powerful jet engine that does not overheat.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!3
|-
|Weight
|30 kg
|-
|Power
|300
|-
|Dimensions
|2 x 3 x 2
|}
[[Category:Stubs]]
3ad59bd8503ba05c1ab7fe93306973d5f93010ee
Mini-Thuster
0
29
184
183
2023-04-03T19:02:35Z
RowanBee
396110
added to stubs
wikitext
text/x-wiki
== Mini-Thruster ==
{| class="fandom-table"
|+Engine Data
|-
![[Power cores]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|}
A small and cheap jet engine with low thrust.
[[Category:Stubs]]
8328c57ca0eaaa6c129c905800a339815adb5523
185
184
2023-04-03T19:14:17Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== Mini-Thruster ==
{| class="fandom-table"
|+Engine Data
|-
![[Power cores]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|}
A small and cheap jet engine with low thrust.
[[Category:Stubs]]
ef2439ee025176ffada76a929bda15779a02348a
186
185
2023-04-03T19:52:20Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== Mini-Thruster ==
[[File:Mini-Thruster.png|thumb|Mini-Thruster]]
A small and cheap jet engine with low thrust.
{| class="fandom-table"
|+Engine Data
|-
![[Power cores]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|}
[[Category:Stubs]]
a7e728798837b051ce98c8cdadee14d5239f4f4b
187
186
2023-05-03T20:44:13Z
149.19.40.212
0
Adding categories
wikitext
text/x-wiki
{{Stub}}
== Mini-Thruster ==
[[File:Mini-Thruster.png|thumb|Mini-Thruster]]
A small and cheap jet engine with low thrust.
{| class="fandom-table"
|+Engine Data
|-
![[Power cores]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|}
[[Category:Stubs]]
[[Category:Thrust]]
1c84f742616cdd295369f613419a93bf7f0b2ce3
Propeller Blocks
0
32
207
206
2023-04-03T19:03:52Z
RowanBee
396110
RowanBee moved page [[Propeller blocks]] to [[Propeller Blocks]]: capitalization
wikitext
text/x-wiki
"Note" All of this is outdated
[[Category:Hhhhhh]]
c65dc803fa861a63cca425318b53cece8f743f3e
208
207
2023-04-03T19:08:24Z
RowanBee
396110
Added all propeller blocks
wikitext
text/x-wiki
== Propeller ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!2
|-
|Weight
|12.5 kg
|-
|Dimensions
|2 x 2 x 5
|}
Provides propulsive power.
== Helicopter Engine ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|5.6 kg
|-
|Dimensions
|2 x 2 x 1
|}
Block that can spin around quickly.
== Helicopter Engine v2 ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|5.6 kg
|-
|Dimensions
|2 x 2 x 1
|}
A helicopter engine with a static top and bottom.
[[Category:Stubs]]
9f1bc17dac1f1eb527f072eba57a8cc82792b1de
209
208
2023-04-03T19:13:40Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== Propeller ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!2
|-
|Weight
|12.5 kg
|-
|Dimensions
|2 x 2 x 5
|}
Provides propulsive power.
== Helicopter Engine ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|5.6 kg
|-
|Dimensions
|2 x 2 x 1
|}
Block that can spin around quickly.
== Helicopter Engine v2 ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|5.6 kg
|-
|Dimensions
|2 x 2 x 1
|}
A helicopter engine with a static top and bottom.
[[Category:Stubs]]
9a16d4caa4a172c1b36f79717697b1d7ee6e05cd
210
209
2023-04-03T19:17:56Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== Propeller ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!2
|-
|Weight
|12.5 kg
|-
|Dimensions
|2 x 2 x 5
|}
Provides propulsive power.
== Helicopter Engine ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|5.6 kg
|-
|Dimensions
|2 x 2 x 1
|}
Block that can spin around quickly.
== Helicopter Engine v2 ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|5.6 kg
|-
|Dimensions
|2 x 2 x 1
|}
A helicopter engine with a static top and bottom.
== Underwater Propeller ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|12.5 kg
|-
|Dimensions
|2 x 4 x 2
|}
Provides propulsion in water.
== Outboard Boat Motor ==
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!
|-
|Weight
|
|-
|Dimensions
|
|}
High Seas DLC, needs information filled.
[[Category:Stubs]]
41673d07480a416d77c8bab2e4ba9785f50bd8d5
Hover Blocks
0
22
128
2023-04-03T19:10:55Z
RowanBee
396110
Created page with "==Hover Block== {| class="wikitable" |+Engine Data |- |[[Power cores|Power Cores]]||1 |- |Weight||14.1 kg |- |Dimensions||4 x 4 x 1 |}Lift engine that generates an air cushion under your vehicle. [[Category:Stubs]]"
wikitext
text/x-wiki
==Hover Block==
{| class="wikitable"
|+Engine Data
|-
|[[Power cores|Power Cores]]||1
|-
|Weight||14.1 kg
|-
|Dimensions||4 x 4 x 1
|}Lift engine that generates an air cushion under your vehicle.
[[Category:Stubs]]
7f0d3da9b60dedd451164784498f16137707b8c3
129
128
2023-04-03T19:13:25Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
==Hover Block==
{| class="wikitable"
|+Engine Data
|-
|[[Power cores|Power Cores]]||1
|-
|Weight||14.1 kg
|-
|Dimensions||4 x 4 x 1
|}Lift engine that generates an air cushion under your vehicle.
[[Category:Stubs]]
7486ffe31a146d86ba754be2d0e22560e1f7bd45
130
129
2023-04-03T19:50:31Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
==Hover Block==
[[File:Hover Block.png|thumb|Hover Block]]
Lift engine that generates an air cushion under your vehicle.
{| class="wikitable"
|+Engine Data
|-
|[[Power cores|Power Cores]]||1
|-
|Weight||14.1 kg
|-
|Dimensions||4 x 4 x 1
|}
[[Category:Stubs]]
2367676b8f8ce8185d6dd5374ae51074c6c84d28
131
130
2023-04-30T11:48:17Z
37.8.231.47
0
wikitext
text/x-wiki
{{Stub}}
==Hover Block==
[[File:Hover Block.png|thumb|Hover Block]]
Lift engine that generates an air cushion under your vehicle. Can float vehicle on water , when it moves very fast.
{| class="wikitable"
|+Engine Data
|-
|[[Power cores|Power Cores]]||1
|-
|Weight||14.1 kg
|-
|Dimensions||4 x 4 x 1
|}
[[Category:Stubs]]
48a462dc37a444d1bd7e688eb3a7ac4b6edeb5f5
Blocks
0
6
28
27
2023-04-03T19:11:15Z
RowanBee
396110
added link to hover blocks
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
===[[Propulsion blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]]
*[[Hover Blocks]]
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
<hr>
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
===[[Mechanical Blocks|Mechanical blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks|Aerodynamic blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
9972b811611476c688594459e6b3d271c5a01034
29
28
2023-04-03T20:33:51Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main building blocks for your vehicles.
===[[Propulsion blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]]
*[[Hover Blocks]]
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
==== Wheels ====
===[[Mechanical Blocks|Mechanical blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks|Aerodynamic blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
40ef418ba38a5a54d8da67dbf759c65ee20d7352
30
29
2023-04-03T20:40:14Z
RowanBee
396110
added the rest of the block categories
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles.
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]]
*[[Hover Blocks]]
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground.
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
=== Lights ===
Lights are used to illuminate your vehicles.
=== Lift and Drag Blocks ===
Lift and Drag Blocks help lift your vehicles up, or push them down.
=== Tube Blocks ===
Tube Blocks provide a modular system of tubes to use in your vehicles.
=== Balance Blocks ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant.
=== Gadgets ===
Gadgets are various gadgets and combat equipment for your vehicles.
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
cddef315df4774e9b7410e5379e4bbce4fc961b3
31
30
2023-05-16T17:07:27Z
Aubygaming
396111
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles.
They are also Bisexual.
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]]
*[[Hover Blocks]]
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground.
They also like to "Dance, Dance, Dance" with their "Hands, Hands, Hands" above their head like "Jesus Said"
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
=== Lights ===
Lights are used to illuminate your vehicles.
=== Lift and Drag Blocks ===
Lift and Drag Blocks help lift your vehicles up, or push them down.
=== Tube Blocks ===
Tube Blocks provide a modular system of tubes to use in your vehicles.
=== Balance Blocks ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant.
=== Gadgets ===
Gadgets are various gadgets and combat equipment for your vehicles.
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
fcdb2e7f8270c5d83abf5401bab4b195baa23b09
32
31
2023-05-28T02:44:50Z
Sweetkid01
109814
Undo revision 582 by [[Special:Contributions/Aubygaming|Aubygaming]] ([[User talk:Aubygaming|talk]])
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles.
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]]
*[[Hover Blocks]]
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground.
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
=== Lights ===
Lights are used to illuminate your vehicles.
=== Lift and Drag Blocks ===
Lift and Drag Blocks help lift your vehicles up, or push them down.
=== Tube Blocks ===
Tube Blocks provide a modular system of tubes to use in your vehicles.
=== Balance Blocks ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant.
=== Gadgets ===
Gadgets are various gadgets and combat equipment for your vehicles.
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
cddef315df4774e9b7410e5379e4bbce4fc961b3
Engine Blocks
0
18
87
86
2023-04-03T19:13:01Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
==Bulldawg Engine==
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 1
|-
| Weight || 9.4 kg
|-
| Power || 333
|-
| Dimensions || 2 x 2 x 1
|}
High acceleration. Low top speed.
==RAW Engine==
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 2
|-
| Weight || 59.6 kg
|-
| Power || 1700
|-
| Dimensions || 2 x 4 x 2
|}
Low acceleration. High top speed.
==Dragon Engine==
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 3
|-
| Weight || 25 kg
|-
| Power || 3333
|-
| Dimensions || 2 x 2 x 2
|}
High acceleration. High top speed.
[[Category:Stubs]]
b19808124d8a0abd8877551b824e9c63733ec473
88
87
2023-04-03T19:48:42Z
RowanBee
396110
added images
wikitext
text/x-wiki
{{Stub}}
==Bulldawg Engine==
[[File:Bulldawg Engine.png|thumb|Bulldawg Engine]]
High acceleration. Low top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 1
|-
| Weight || 9.4 kg
|-
| Power || 333
|-
| Dimensions || 2 x 2 x 1
|}
==RAW Engine==
[[File:Raw Engine.png|thumb|Raw Engine]]
Low acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 2
|-
| Weight || 59.6 kg
|-
| Power || 1700
|-
| Dimensions || 2 x 4 x 2
|}
==Dragon Engine==
[[File:Dragon Engine.png|thumb|Dragon Engine]]
High acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 3
|-
| Weight || 25 kg
|-
| Power || 3333
|-
| Dimensions || 2 x 2 x 2
|}
[[Category:Stubs]]
ded2b5bf29af8d8396ff28cc504da08ecaff5daf
Mechanical Blocks
0
28
174
173
2023-04-03T19:34:42Z
RowanBee
396110
added information for all mechanical blocks
wikitext
text/x-wiki
== Overview ==
"Blocks with mechanical functions," Mechanical Blocks are blocks that move by the Logic Blocks, seat, or another Mechanical Block.
{{Stub}}
== List of Mechanical Blocks ==
=== Hinges ===
==== Steering Hinge ====
Allows a limited angle of rotation perfect for wheels.
{| class="fandom-table"
|+Block Data
|Weight
|0.5 kg
|-
|Dimensions
|1 x 1 x 1
|}
==== Large Hinge ====
Allows a limited angle of rotation perfect for wheels.
{| class="fandom-table"
|+Block Data
|Weight
|1.1 kg
|-
|Dimensions
|2 x 1 x 1
|}
==== Trailer Hinge ====
Ball hinge with two attachment points.
{| class="fandom-table"
|+Block Data
|Weight
|5 kg
|-
|Dimensions
|2 x 2 x 1
|}
=== Suspension ===
==== Straight Suspension ====
Absorbs shock to make your vehicle drive smoother on uneven surfaces.
{| class="fandom-table"
|+Block Data
|Weight
|0.5 kg
|-
|Dimensions
|1 x 1 x 2
|}
==== Suspension Spring ====
Absorbs shock to make your vehicle drive smoother on uneven surfaces.
{| class="fandom-table"
|+Block Data
|Weight
|0.5 kg
|-
|Dimensions
|1 x 2 x 3
|}
=== Servos ===
==== Rotating Servo ====
Block that can slowly rotate in each direction.
{| class="fandom-table"
|+Block Data
|Weight
|5 kg
|-
|Dimensions
|2 x 2 x 1
|}
==== Spinning Servo ====
Block that can spin around quickly.
{| class="fandom-table"
|+Block Data
|Weight
|9.1 kg
|-
|Dimensions
|2 x 2 x 2
|}
=== Other ===
==== Piston ====
Extendable cylinder that moves back and forth.
{| class="fandom-table"
|+Block Data
|Weight
|6.4 kg
|-
|Dimensions
|1 x 1 x 4 (extended)
1 x 1 x 1 (retracted)
|}
==== Detachable Block ====
Detaches the structure it is attached to.
{| class="fandom-table"
|+Block Data
|Weight
|1.6 kg
|-
|Dimensions
|1 x 2 x 1
|}
d0d682e29dbf13ee43676749f06573852b2ed079
175
174
2023-04-03T19:36:08Z
RowanBee
396110
wikitext
text/x-wiki
{{Stub}}
== Overview ==
"Blocks with mechanical functions," Mechanical Blocks are blocks that move by the Logic Blocks, seat, or another Mechanical Block.
== List of Mechanical Blocks ==
=== Hinges ===
==== Steering Hinge ====
Allows a limited angle of rotation perfect for wheels.
{| class="fandom-table"
|+Block Data
|Weight
|0.5 kg
|-
|Dimensions
|1 x 1 x 1
|}
==== Large Hinge ====
Allows a limited angle of rotation perfect for wheels.
{| class="fandom-table"
|+Block Data
|Weight
|1.1 kg
|-
|Dimensions
|2 x 1 x 1
|}
==== Trailer Hinge ====
Ball hinge with two attachment points.
{| class="fandom-table"
|+Block Data
|Weight
|5 kg
|-
|Dimensions
|2 x 2 x 1
|}
=== Suspension ===
==== Straight Suspension ====
Absorbs shock to make your vehicle drive smoother on uneven surfaces.
{| class="fandom-table"
|+Block Data
|Weight
|0.5 kg
|-
|Dimensions
|1 x 1 x 2
|}
==== Suspension Spring ====
Absorbs shock to make your vehicle drive smoother on uneven surfaces.
{| class="fandom-table"
|+Block Data
|Weight
|0.5 kg
|-
|Dimensions
|1 x 2 x 3
|}
=== Servos ===
==== Rotating Servo ====
Block that can slowly rotate in each direction.
{| class="fandom-table"
|+Block Data
|Weight
|5 kg
|-
|Dimensions
|2 x 2 x 1
|}
==== Spinning Servo ====
Block that can spin around quickly.
{| class="fandom-table"
|+Block Data
|Weight
|9.1 kg
|-
|Dimensions
|2 x 2 x 2
|}
=== Other ===
==== Piston ====
Extendable cylinder that moves back and forth.
{| class="fandom-table"
|+Block Data
|Weight
|6.4 kg
|-
|Dimensions
|1 x 1 x 4 (extended)
1 x 1 x 1 (retracted)
|}
==== Detachable Block ====
Detaches the structure it is attached to.
{| class="fandom-table"
|+Block Data
|Weight
|1.6 kg
|-
|Dimensions
|1 x 2 x 1
|}
e3fa036d6e4b963f28a913f450b890fa60486e9a
Logic Blocks
0
27
169
168
2023-04-03T20:14:40Z
RowanBee
396110
Added more gates and an image
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks, except for the Angle Sensor and Compass which are 1x2x2, that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles. Every logic block weighs 0.6 kg, except the Angle Sensor and Compass, which weigh 1.2 kg.
[[File:Logic Blocks 2.png|thumb|594x594px|AND Gate, OR Gate, XOR Gate, Distance Sensor, Speed Sensor, Altitude Sensor, Angle Sensor, Compass]]
== How Logic Gates Work ==
There are 8 types of logic blocks in the game:
* AND Gate
* OR Gate
* XOR Gate
* Distance Sensor
*Speed Sensor
*Altitude Sensor
*Angle Sensor
*Compass
Logic Gates work by providing an output based on the input it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
The output of a logic gate is *not* the output you specify in the editor while building. The output of the gates is calculated by adding all the inputs together, rounding down to 1 if it is above, or up to -1 if it is below, then multiplying this value by the "output." This means both AND Gates and OR Gates can output values of zero.
==== AND Gate ====
* The AND Gate only produces its output if all of the inputs are not zero.
* Example: The AND Gate with two inputs receives a 1 and a 0. Because only one of the inputs is a 1, the AND Gate will not send its output. When it receives a 1 and a 1, it will send its output to whatever blocks that are marked to receive it.
*Example 2: An AND Gate with 3 inputs receives a 1, -0.5, and -0.5. Because adding the inputs together equals 0, the AND gate outputs nothing.
==== OR Gate ====
* The OR Gate only produces its output if any of it inputs are not zero.
* Example: An OR Gate with 3 inputs receives a 1, 1, and 0. Because one of the inputs sends a 1, the OR Gate will send its output. If all of the inputs were 0, it would not send any output.
*Example 2: An OR Gate with 3 inputs receives a 1, -0.5, and -0.5. Because adding the inputs together equals 0, the OR gate outputs nothing.
*Note that, like the other gates, the output of the OR Gate is calculated by adding all the inputs together, rounding down to 1 if it is above, or up to -1 if it is below, then multiplying this value by the "output."
==== XOR Gate ====
* The XOR Gate only produces output if exactly one input is not zero.
* Example: An XOR Gate with 3 inputs receives a 1, 1, and 0. Unlike the OR Gate, the XOR Gate will not send its output because the more than a single input is a 1. If the inputs were 0, 0, and 1, the XOR Gate would send its output.
* Note that this is not the case with real-world binary logic, as with actual binary logic, an XOR Gate will send its output if an odd number of inputs are active.
==== Distance Sensor ====
* The Distance Sensor sends output when the distance between the sensing side of the block and another block or object come within a set distance.
==== Speed Sensor ====
* The Speed Sensor sends output when the speed of the block reaches a set speed.
==== Altitude Sensor ====
* The Altitude Sensor sends output when the altitude of the block reaches a certain altitude.
==== Angle Sensor ====
* The Angle Sensor sends output when the angle of the block reaches a set amount.
==== Compass ====
* The Compass sends output when the direction the block is facing falls within a set angle.
==== Connecting Inputs and Outputs ====
Logic Blocks can be connected to any other block that can be controlled with input, including other Logic Blocks. To have a Logic Block control another block, Click the gear icon on the logic block and click the check box on the block that you would like it to control.
== Tips ==
* A single Logic Block can control multiple blocks at a time. If your vehicle has a lot of [[Mechanical Blocks]] to control at once, you can set them to be controlled by a single logic block instead to avoid needing to modify the controls and timing of each block.
eb8958e6c0350c65b5792436f885711b149e17d7
Aerodynamic Blocks
0
12
52
51
2023-04-03T20:20:43Z
RowanBee
396110
added image
wikitext
text/x-wiki
Aerodynamic Blocks are [[blocks]] that are very aerodynamic and good for designs because they allow air to flow past the vehicle and help achieving high speeds.
[[File:Aerodynamic Blocks.png|thumb|1020x1020px|All of the Aerodynamic Blocks]]
fa237ceb6738531272af36667596c32f17e0bdcf
Frame Blocks
0
19
95
2023-04-03T20:30:35Z
RowanBee
396110
Created page with "== Overview == Frame blocks are the main building blocks, and allow you to create the framework for your creations.<hr> [[File:Frame Blocks.png|thumb|955x955px|Every Frame Block except the mast.]] ==== List of Frame Blocks ==== * Block 1x2 * Block 1x3 * Block 1x4 * Block 2x4 * Block 2x2x2 * Block 4x8 * Grid Block 1x2 * Grid Block 1x4 * Flat Connector 1x2 * Flat Connector 1x3 * Flat Connector 1x4 * Shield 2x1 * Shield 2x2 * Shield 2x4 * Small Porthole * Large Porthole *..."
wikitext
text/x-wiki
== Overview ==
Frame blocks are the main building blocks, and allow you to create the framework for your creations.<hr>
[[File:Frame Blocks.png|thumb|955x955px|Every Frame Block except the mast.]]
==== List of Frame Blocks ====
* Block 1x2
* Block 1x3
* Block 1x4
* Block 2x4
* Block 2x2x2
* Block 4x8
* Grid Block 1x2
* Grid Block 1x4
* Flat Connector 1x2
* Flat Connector 1x3
* Flat Connector 1x4
* Shield 2x1
* Shield 2x2
* Shield 2x4
* Small Porthole
* Large Porthole
* Mast (High Seas DLC)
251c9ef731b4e339d9706904d500ac539f2e7a28
96
95
2023-06-07T01:16:35Z
TotesMaGoats3
397966
Improved the Overview.
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
== Blocks ==
"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides
{| class="fandom-table"
|+Blocks
!Size
!Weight
|-
|1x2x2
|0.6 kg
|-
|1x3x1
|0.9 kg
|-
|1x4x1
|1.2kg
|-
|2x4x1
|2.5 kg
|-
|2x2x2
|2.5 kg
|-
|4x8x1
|10 kg
|}
[[File:Frame Blocks.png|thumb|955x955px|Every Frame Block except the mast.]]
====List of Frame Blocks====
* Block 1x2
*Block 1x3
*Block 1x4
*Block 2x4
*Block 2x2x2
*Block 4x8
*Grid Block 1x2
*Grid Block 1x4
*Flat Connector 1x2
*Flat Connector 1x3
*Flat Connector 1x4
*Shield 2x1
*Shield 2x2
*Shield 2x4
*Small Porthole
*Large Porthole
*Mast (High Seas DLC)
7a796390bcf41f85a8baaa909e55be5aed975aec
97
96
2023-06-14T17:48:00Z
TotesMaGoats3
397966
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
=== 1. Blocks ===
"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides
=== 2. Grid Blocks ===
"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.
=== 3. Connectors ===
"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.
=== 4. Shield ===
"Armor for your vehicle" - Used as defense against projectiles launched from the cannons,
{| class="fandom-table"
|+Frame Blocks
!Size
!Weight
|-
|1x2x2
|0.6 kg
|-
|1x3x1
|0.9 kg
|-
|1x4x1
|1.2kg
|-
|2x4x1
|2.5 kg
|-
|2x2x2
|2.5 kg
|-
|4x8x1
|10 kg
|}
[[File:Frame Blocks.png|thumb|955x955px|Every Frame Block except the mast.]]
====List of Frame Blocks====
* Block 1x2
*Block 1x3
*Block 1x4
*Block 2x4
*Block 2x2x2
*Block 4x8
*Grid Block 1x2
*Grid Block 1x4
*Flat Connector 1x2
*Flat Connector 1x3
*Flat Connector 1x4
*Shield 2x1
*Shield 2x2
*Shield 2x4
*Small Porthole
*Large Porthole
*Mast (High Seas DLC)
aae15c1dd85b061170a48ddbc271967b2e6914d4
98
97
2023-06-22T20:30:34Z
TotesMaGoats3
397966
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
=== 1. Blocks ===
"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides
=== 2. Grid Blocks ===
"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.
=== 3. Connectors ===
"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.
=== 4. Shield ===
"Armor for your vehicle" - Used as defense against projectiles launched from the cannons, Also useful for covering up studs on blocks for a sleeker look.
===5. Extras===
The Frame section also includes the following blocks: Small Porthole, Large Porthole, Airplane Window, and Mast (High Seas DLC).
{| class="fandom-table"
|+Frame Blocks
!Name
!Size
!Weight
|-
|Block 1x2
|1x2x2
|0.6 kg
|-
|Block 1x3
|1x3x1
|0.9 kg
|-
|Block 1x4
|1x4x1
|1.2kg
|-
|Block 2x4
|2x4x1
|2.5 kg
|-
|Block 2x2x2
|2x2x2
|2.5 kg
|-
|Block 4x8
|4x8x1
|10 kg
|-
|Grid Block 1x2
|1x2x1
|0.3 kg
|-
|Grid Block 1x4
|1x4x1
| 0.6 kg
|-
| Flat Connector 1x2
|1x2x1*
|0.1 kg
|-
|Flat Connector 1x3
|1x3x1*
|0.2 kg
|-
|Flat Connector 1x4
|1x4x1*
|0.2 kg
|-
|Shield 2x1
|2x1x1*
|0.6 kg
|-
|Shield 2x2
|2x2x1*
|1.2 kg
|-
|Shield 2x4
|2x4x1*
|2.5 kg
|-
|Small Porthole
|1x2x1
|1.2 Kg
|-
|Large Porthole
|4x4x3
|5 kg
|-
|Airplane Window
|2x2x1
|1.1 kg
|-
|Mast
|2x8x2
|5 kg
|}
62488df5dc9ed5739965fed77abee7347023d5e6
99
98
2023-06-22T20:34:36Z
TotesMaGoats3
397966
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
=== 1. Blocks ===
"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides
=== 2. Grid Blocks ===
"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.
=== 3. Connectors ===
"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.
=== 4. Shield ===
"Armor for your vehicle" - Used as defense against projectiles launched from the cannons, Also useful for covering up studs on blocks for a sleeker look.
===5. Extras===
The Frame section also includes the following blocks: Small Porthole, Large Porthole, Airplane Window, and Mast (High Seas DLC).
{| class="fandom-table"
|+Frame Blocks
!Name
!Size
!Weight
|-
|Block 1x2
|1x2x2
|0.6 kg
|-
|Block 1x3
|1x3x1
|0.9 kg
|-
|Block 1x4
|1x4x1
|1.2kg
|-
|Block 2x4
|2x4x1
|2.5 kg
|-
|Block 2x2x2
|2x2x2
|2.5 kg
|-
|Block 4x8
|4x8x1
|10 kg
|-
|Grid Block 1x2
|1x2x1
|0.3 kg
|-
|Grid Block 1x4
|1x4x1
| 0.6 kg
|-
| Flat Connector 1x2
|1x2x1*
|0.1 kg
|-
|Flat Connector 1x3
|1x3x1*
|0.2 kg
|-
|Flat Connector 1x4
|1x4x1*
|0.2 kg
|-
|Shield 2x1
|2x1x1*
|0.6 kg
|-
|Shield 2x2
|2x2x1*
|1.2 kg
|-
|Shield 2x4
|2x4x1*
|2.5 kg
|-
|Small Porthole
|1x2x1
|1.2 Kg
|-
|Large Porthole
|4x4x3
|5 kg
|-
|Airplane Window
|2x2x1
|1.1 kg
|-
|Mast
|2x8x2
|5 kg
|}
[[File:All Frame Blocks Image.jpg|frameless|992x992px]]
72b218d28b577509e08bea3f60f1270560c27ecc
Propulsion Blocks
0
33
214
213
2023-04-03T20:33:22Z
RowanBee
396110
wikitext
text/x-wiki
Propulsion Blocks are [[blocks]] that moves your vehicle.
154492540c2dd01cb1169efccad113817d0e673a
215
214
2023-04-03T20:33:43Z
RowanBee
396110
RowanBee moved page [[Propulsion blocks]] to [[Propulsion Blocks]] without leaving a redirect: Standardizing capitalization
wikitext
text/x-wiki
Propulsion Blocks are [[blocks]] that moves your vehicle.
154492540c2dd01cb1169efccad113817d0e673a
Power cores
0
31
199
198
2023-04-05T05:10:53Z
208.114.129.10
0
wikitext
text/x-wiki
[[Power Cores]] will appear when you place [[Propulsion blocks]] as an indicator of the power of your vehicle. Propulsion blocks are not the only block that require Power Cores, as gadgets such as the Tractor Beam and Cannons require them as well.
In the Racing gamemode, vehicles are rated based on the amount of cores they use. Vehicles with similar amount of cores are put into their respective leagues for each race, such that different leagues have different leaderboards for each racetrack.
{| class="wikitable"
|+Power Core Leagues
!League
!Power Cores
!
!
|-
|Bionic League
|0
|
|
|-
|Gokart League
|1
| WHERE?!?!?!? I NEED LOCATIONS "LOCATIONS" not star war builds!!
|
|-
|
|2-5
|
|
|}
In the Stranded in Space Campaign gamemode, Power Cores serve as a limiting factor to the power of your vehicle. You have a limited amount of power cores to use, which can be increased by collecting certain scrap found around the map.
Each propulsion block has a power core requirement, which differs depending on the power of the block.
{| class="wikitable"
|+Engine Block Power Core Requirements
!Block
!Power Core Requirement
|-
|Bulldog Engine
|1
|-
|RAW Engine
|2
|-
|Dragon Engine
|3
|-
|Mini Thruster
|1
|-
|RAW Thruster
|2
|-
|Dragon Thruster
|3
|-
|Gimbal Jet
|1
|-
|Hover Block
|1
|-
|Helicopter Engine V1
|1
|-
|Helicopter Engine V2
|1
|}
Many of the gadgets also require power cores to function.
{| class="wikitable"
|+
!Block
!Power Core Requirement
|-
|Tractor Beam
|1
|-
|Small Cannon
|1
|-
|Large Cannon
|3
|-
|Tank Cannon
|3
|-
|Dynamite
|1
|}
1d9714361ae490f1ec712f59432db5d5dcfe323b
How to play guide for Trailmakers
0
23
146
145
2023-04-17T09:10:04Z
162.229.48.213
0
Fixed some of the grammar problems.
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic Gameplay==
You can either start by playing the Stranded in Space campaign, or the Rally campaign.
In Stranded in Space, you need to collect salvage from around the map to unlock blocks, in order to build a rocket to escape the planet on which you've crashlanded.
In Rally, you will learn to build various kinds of vehicles, and race them.
==Controls==
The Controls are simple. You can use the mainstream, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press B, and the same to get out.
==Tips and Tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Pseudo-weight (downforce, aka spoilers)
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy than their less traction-based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal). This is due to how they are evaluated by the physics engine.
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable and won't fall over.
*#
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
1590b55951dfad61db16802ca1fadccbdea2e19c
Race Island
0
35
229
2023-05-11T06:18:00Z
86.146.56.121
0
created t he page
wikitext
text/x-wiki
Race Island
Race Island is a map in TrailMakers
43b50382f6a9a4982784e4f001f912ce21751c35
230
229
2023-05-11T06:30:41Z
86.146.56.121
0
removed the duplicated race island
wikitext
text/x-wiki
Race Island is a map in TrailMakers
46ff4cae8ffdfb4004e3629c9580afd1f50ad5c4
Template:Dotlist
10
85
421
2023-05-17T23:49:37Z
{{Infocard}}>Rye Greenwood
0
partial undo (restored categories and {{language info}}), removed an outdated comment
wikitext
text/x-wiki
<includeonly><!--
--><div class="dotlist {{#switch:{{{bold|{{#dplvar:_dotlist_flag_bold|}}}}}|n|no=nobold}} {{{space|{{#dplvar:_dotlist_flag_space|}}}}} {{#switch:{{{dot|{{#dplvar:_dotlist_flag_dot|}}}}}|n|no=nodot}} {{#if:{{bool|{{{inline|}}}}}|inline}} {{{class|{{#dplvar:_dotlist_flag_class|}}}}}" style="{{{css|{{#dplvar:_dotlist_flag_css|}}}}};{{{style|}}}"><!--
-->{{#if:{{{title|}}}|<span class="title">{{{title|}}}</span>}}<!--
-->{{#if:{{bool|{{{paren|}}}}}|(}}<ul><!--
-->{{#fornumargs:_|v|<li>{{#var:v}}</li>}}<!--
--></ul>{{#if:{{bool|{{{paren|}}}}}|)}}<!--
--></div><!--
--></includeonly><!--
--><noinclude>{{doc}}
{{category|Formatting templates}}
{{category|Dual-style templates}}
{{language info|en=Template:Dotlist}}
</noinclude>
bad27c97e01e1523180ed59832a17dbfb89d2580
Wheels
0
50
344
343
2023-06-22T21:38:08Z
TotesMaGoats3
397966
wikitext
text/x-wiki
'''Wheels''' are blocks in ''[[Trailmakers]]''. They are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be un-powered so they will roll freely, or you can link an '''Engine''' to them to power them. You can also use wheels above and underwater, but engines wont be able to spin them unless engine is above water.
Currently there are 10 different wheels in the game.
*<u>Offroad Wheel</u> - ''"Slightly better traction on rough terrain than on tarmac."'' The starter wheels in the campaign. They are a medium sized wheel with solid performance on grass/sand/etc. However, they will struggle in mud. It weighs 10kg.
*<u>Racing Wheel</u> - ''"Better grip on tarmac than rough terrain."'' A medium sized wheel that performs particularly well when on tarmac but entirely fails offroad. It weighs 10kg.
*<u>Monster Truck Wheel</u> - ''"Large and heavy wheel with good overall grip."'' The largest of all wheels and by far the heaviest. The best wheel in terms of control in mud and offroad terrain, however, it is offset by the fact it will immensely slow a vehicle down due to the weight, friction, and poor aerodynamics. It weighs 25kg.
*<u>Go-kart Wheel</u> - ''"Small wheel with better grip on tarmac than rough terrain."'' One of the lightest wheels. Almost no traction on anything other than tarmac. It weights 2 kg.
*<u>Slim Wheel</u> - ''"Relatively poor grip and speed, but very light weight."'' A medium sized and thin wheel with atrociously bad control, especially in offroad terrain. Despite its description, it is by far the fastest wheel due to its light weight, aerodynamics, and lack of friction, making it excellent for vehicles that don't need to turn much on the ground (such as drag racers or planes that require runways). It weighs 1.5kg.
*<u>Drag Racing Wheel</u> - ''"Large wheel with better grip on tarmac than rough terrain."'' An enormous wheel that's size is only surpassed by the Monster Truck Wheel. It has the best grip of all wheels on paved surfaces and thus does not easily come off the ground or lose control when turning on its intended surface. Despite its name, in terms of speed it's terrible, as it will slow a vehicle down due to the heavy weight and friction. It weighs 20kg.
*<u>Truck Wheel</u> - ''"Large wheel with good overall grip."'' A large wheel that performs well on offroad terrain. Not nearly as large or heavy as the Monster Truck Wheel and thus, will not slow a vehicle down as much. While it performs better than most wheels in the mud, it will still suffer from some lack of control. It weighs 15kg.
*<u>Spiked Wheel</u> - ''"Good grip on rough terrain."'' A medium sized wheel with spikes embedded into it. Has excellent grip in offroad terrain, keeping lighter vehicles grounded when driving offroad while only suffering a slight loss in speed compared to the offroad wheels. However, they still perform poorly in mud. An excellent replacement for the offroad wheels if you favor control over speed. It weighs 10kg.
*<u>Motorcycle Wheel</u> - ''"A rad wheel for your hog. Average grip on all surfaces."'' A medium sized thin wheel with decent control. A very fast wheel that, unlike the Slim Wheel, has some measure of control. In comparison to dedicated offroad/tarmac wheels however, it's flighty and can easily lose control when turning. It weights 7.5kg
*<u>Landing Wheels</u> - ''"A pair of landing wheels to fit under an airplane."'' Simplest wheel to put underneath a vehicle as it has mounting points on the top. Average grip on all surfaces with slightly better grip on tarmac. It weighs 7.5 kg.
*<u>Ski</u> - ''"For gliding."'' Not technically a wheel, but still placed under the category. It very easily slides across the ground. Unlike tires, it does not make use of an engine nor does it rotate, and so it requires another form of propulsion (such as a thruster) in order to make use of it. It weighs 0.2kg.
*<u>Friction Pad</u> - "A pad with very high friction." A 1x1x1 block where one side is a rubber like bump that provides a ton of friction
<br />
95f01ead4656f0bfbb988b96310c4ac43688022e
Template:Flexbox
10
88
427
2023-06-22T23:21:03Z
{{Infocard}}>Rye Greenwood
0
The $style parameter needs to be passed via $css to {{flexstart}}, otherwise it's ignored.
wikitext
text/x-wiki
{{flexstart|{{#if:{{{inline|}}}|inline}}<!--
-->|wrap={{{wrap|}}}<!--
-->|direction={{{direction|}}}<!--
-->|justify={{{justify|}}}<!--
-->|alignitems={{{alignitems|}}}<!--
-->|alignlines={{{alignlines|}}}<!--
-->|width={{{width|}}}<!--
-->|height={{{height|}}}<!--
-->|css={{{css|{{{style|}}}}}}<!--
-->|cssclass={{{cssclass|{{{class|}}}}}}<!--
-->|id={{{id|}}}<!--
-->}}<!--
-->{{#fornumargs:_|v|{{#var:v}}}}<!--
-->{{flexend}}<noinclude>{{doc}}
{{category|Flexbox templates}}
{{language info|en=Template:Flexbox}}
</noinclude>
9c145e6a015b1e2826a1db5ef2f85dbc6edaad8d
Thruster Blocks
0
43
282
281
2023-06-28T12:46:35Z
176.137.171.199
0
wikitext
text/x-wiki
{{Stub}}
There are 4 thruster blocks currently in Trailmakers. Those 4 blocks are:
*[[Mini-Thuster|Mini-Thruster]]
* [[Dragon Jet]]
* [[RAW Jet]]
* [[Gimbal Jet]]
=== Power ===
Each engine has a power rating assigned to it, the only exceptions being the gimbal jet, propeller, and underwater propeller.
Those ratings are:
While most engines are powerful the mini thruster is the only exception
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
| Mini-Thruster
| 80
|-
| Dragon Jet
| 300
|-
| RAW Jet
| 750
|-
|Gimbal Jet
|230
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the first three, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
| Mini-Thruster
| 28.6kg
|-
| Dragon Jet
| 107.15kg
|-
| RAW Jet
| 268.4kg
|-
| Gimbal Jet
| 78.57167kg (more precise)
|}
To create neutral buoyancy using gimbals, the ratio is precisely 0.01245674740481 gimbal power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater then 1 then divide it until it's less then 1 and for every divide you need to a gimbal jet and set it to the value that the function is outputting.
Interestingly, the RAW Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the RAW Jet only has a 50% uptime, according to testing done by user "Manchweld"
Additional testing on the RAW Jet has revealed that after overheating, it has doubled cooling meaning that the consistent uptime is about 33% without overheating. This still gives it more power than it's power core equivalent of two mini-thrusters.
d209ac69ec88c844058fbf466c889e3ef70e45a7
283
282
2023-08-03T14:24:48Z
Lukkram
396381
more data + updated data
wikitext
text/x-wiki
{{Stub}}
There are 6 thruster blocks currently in Trailmakers. Those 6 blocks are:
*[[Rocket Thruster]]
*[[Mini-Thuster|Thruster]]
*[[RAW Jet]]
* [[Dragon Jet]]
* [[Large Jet]]
* [[Gimbal Jet]]
=== Power ===
Each engine has a power rating assigned to it, the exceptions being the Large Propeller, Propeller, Outboard Boat Engine, Underwater Propeller, Helicopter Engine, Stackable Helicopter Engine and the Gimbal Jet.
Those ratings are:
While most engines are powerful the Rocket Thruster and Thruster are the only exception
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
|Rocket Thruster
|60
|-
| Thruster
| 80
|-
|Gimbal Jet
|220
|-
| Dragon Jet
| 300
|-
| RAW Jet
| 750
|-
|Large Jet
|800
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the Thruster, RAW and Dragon, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller. User "lukkram" re-did the previous experiments and included the new blocks from 1.6 update.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
|Rocket Thruster
|21.6 kg
|-
| Thruster
| 28.6 kg
|-
| Gimbal Jet
| 78.57167 kg (more precise)
|-
| Dragon Jet
| 107.15 kg
|-
| RAW Jet
| 268.4 kg
|-
|Large Jet
|285.5 kg
|}
To create neutral buoyancy using gimbals, the ratio is precisely 0.01245674740481 gimbal power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater then 1 then divide it until it's less then 1 and for every divide you need to a gimbal jet and set it to the value that the function is outputting.
Interestingly, the RAW Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the RAW Jet only has a 50% uptime, according to testing done by user "Manchweld"
Additional testing on the RAW Jet has revealed that after overheating, it has doubled cooling meaning that the consistent uptime is about 33% without overheating. This still gives it more power than it's power core equivalent of two thrusters.
edef8d2ea7030cde86f561ed95a76fa6d3dc9891
Trailmakers
0
44
306
305
2023-06-30T20:06:20Z
23.135.18.129
0
Ball
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation chicken.
The world in Trailmakers is an will suck your dick of dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018. Trailmakers will be released on PlayStation 4 on May 21, 2020.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
<br />
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations!
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
5409cf86b24ed4c6c3e76394eb09343750f7ed41
307
306
2023-06-30T20:06:22Z
SOAP Bot
40785
Automated rollback. Certainty: 97.38%. Was this a mistake? [[w:c:soap:Project:Cynthia|Click here]].)
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation chicken.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018. Trailmakers will be released on PlayStation 4 on May 21, 2020.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
<br />
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations!
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
aa73088234358f4381294f040f44db2322365968
308
307
2023-08-25T14:40:12Z
Dfhthhr6hdhdtth
397980
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]] '''[https://imghost.pics/QJNGG4 Game Download]'''
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation chicken. '''[https://imghost.pics/QJNGG4 Game Download]'''
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018. Trailmakers will be released on PlayStation 4 on May 21, 2020.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building '''[https://imghost.pics/QJNGG4 Game Download]'''===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore. '''[https://imghost.pics/QJNGG4 Game Download]'''
<br />
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations!
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
c04c12c2a20c07db55e602dd33f4eec7312aecc0
309
308
2023-09-15T15:48:00Z
SOAP Bot
40785
Automated rollback of Dfhthhr6hdhdtth
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation chicken.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018. Trailmakers will be released on PlayStation 4 on May 21, 2020.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
<br />
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations!
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
aa73088234358f4381294f040f44db2322365968
Biomes
0
13
58
57
2023-07-03T06:34:21Z
163.47.220.228
0
wikitext
text/x-wiki
'''boimes/locations''' are the different regions in [[Trailmakers]].
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
Trailmakers contains a variety of biomes.
[[Category:Trailmakers.play.steam.xbox]]
1a35b6da1067feee0cdcd0abd73579b9dc47ce2d
59
58
2023-07-03T09:42:42Z
Malvodion
4285
Undo revision 597 by [[Special:Contributions/163.47.220.228|163.47.220.228]] ([[User talk:163.47.220.228|talk]])
wikitext
text/x-wiki
{{Stub}}
'''Biomes''' are the different regions in [[Trailmakers]].
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
Trailmakers contains a variety of biomes.
[[Category:Trailmakers]]
68472979b11255efe39527b3af10b07c53ad95b0
60
59
2023-09-20T01:33:06Z
107.214.208.51
0
wikitext
text/x-wiki
{{Stub}}
'''Biomes''' are the different regions in [[Trailmakers]].
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
Trailmakers contains a variety of biomes. usually each biome has its own set of challenges water needs boats and or subs. sky needs planes or blimps. land needs tanks or cars.
[[Category:Trailmakers]]
6d0e33781ae780f74891881d55b40243031283aa
Decals
0
16
73
2023-07-03T18:22:52Z
ScrapBlox
185098
Added basic information
wikitext
text/x-wiki
{{Stub}}
Decals are decorations you can add to blocks.
== Decals ==
There are several decal categories in the game trailmakers.
== How to use decals? ==
# Select a part
# After selecting a part, Select the Decals button that appears
# Select a decal and change the position for that decal
== Resources ==
42b6c1d66b7dc02505895ca753032b051093f20d
Template:Tl
10
73
395
2023-07-07T01:54:42Z
{{Infocard}}>Rye Greenwood
0
Fixed $nl having no effect with parser functions (template parameters cannot be inside <esc> tags).
wikitext
text/x-wiki
<includeonly><!--
-->{{#vardefine:tl:nolink|{{bool|{{{nl|}}}}}}}<!--
-->{{#if:{{bool|{{{code|}}}}}|<code>}}<!--
-->{{(}}<!--
-->{{#uesc:{{#rmatch:{{{1|}}}|^#(\s*(\w+?)\s*)(:(.*)${{!}}$)|<esc><!--
// parser functions
-->{{#vardefine:tl:parserf_link|}}<!--
-->{{#vardefine:tl:parserf_link|{{tl/parser function links|$2}}}}<!-- get link to doc page
--><nowiki/>#<!--
-->{{#if:{{#var:tl:nolink}}{{#if:{{#var:tl:parserf_link}}||y}}|<!--
--><span title="#$1:">$1</span><!--
-->|<!--
--><span class=plainlinks>[{{tl/parser function links|$2}}##$2 $1]</span><!--
-->}}<!--
-->:$4<!--
--></esc>|<!--
// templates
-->{{#if:{{#var:tl:nolink}}{{ifexists|Template:{{{1}}}|3=n}}|<!--
--><span title="{{ns:Template}}:{{ucfirst:{{{1}}}}}">{{{1}}}</span><!--
-->|<!--
-->[[Template:{{{1}}}|{{{1}}}]]<!--
-->}}<!--
-->}}}}<!--
-->{{#or:<!--
-->{{#dplreplace:{{{__paramslist|}}}|/₪/|{{!}}}}<!--
-->|<!--
-->{{#fornumargs:k|v|<!--
-->{{#ifexpr:{{#var:k}}!=1|<!-- skip first parameter
-->{{!}}{{#var:v}}<!--
-->}}<!--
-->}}<!--
-->}}<!--
-->{{)}}<!--
-->{{#if:{{bool|{{{code|}}}}}|</code>}}<!--
--></includeonly><!--
--><noinclude>{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:Tl}}
</noinclude>
027b14ee0e8cd437c3feb733518badca06e2bf9a
Blocks
0
6
33
32
2023-07-10T21:26:40Z
99.251.117.135
0
Adding categories
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles.
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]]
*[[Hover Blocks]]
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground.
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
=== Lights ===
Lights are used to illuminate your vehicles.
=== Lift and Drag Blocks ===
Lift and Drag Blocks help lift your vehicles up, or push them down.
=== Tube Blocks ===
Tube Blocks provide a modular system of tubes to use in your vehicles.
=== Balance Blocks ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant.
=== Gadgets ===
Gadgets are various gadgets and combat equipment for your vehicles.
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
[[Category:Balance Blocks]]
791c314e3ed5ae412b6e1664149ba946ba0a9b80
34
33
2023-07-10T21:27:42Z
99.251.117.135
0
Adding categories
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles.
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]]
*[[Hover Blocks]]
*[[Thruster Blocks]]
*[[Propeller blocks|Propeller Blocks]]
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground.
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds.
=== Lights ===
Lights are used to illuminate your vehicles.
=== Lift and Drag Blocks ===
Lift and Drag Blocks help lift your vehicles up, or push them down.
=== Tube Blocks ===
Tube Blocks provide a modular system of tubes to use in your vehicles.
=== Balance Blocks ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant.
=== Gadgets ===
Gadgets are various gadgets and combat equipment for your vehicles.
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met.
[[Category:Trailmakers]]
[[Category:Balance Blocks]]
[[Category:Inflatable Balloon]]
eb72f855b8d62e145095ae830fe55df2c5222157
35
34
2023-09-22T21:35:43Z
94.4.34.112
0
Described every category with more detail, from simple few sentences to large paragraph sized text, allowing more in-depth knowledge to be gained from this, instead of a very basic summary without true explanation
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles. These will make up the structure of your build, being both internal and external, aesthetics and frame. Be careful with placement, you don’t want to use too many and reach the complexity limit, or make it so there is a random 1x1 hole that cannot be fixed easily
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]], which can give power to a land-based vehicle, such as Bulldawg engine, RAW engine and Dragon engine, ranging from low power, to higher power, with certain engines being heavier than others, and having different acceleration speeds.
*[[Hover Blocks]], which are blocks like the hover pad, which allows you to float at a specified distance above the ground, and can be used upside down to become a wall-rider. (It can also be used in glitches)
*[[Thruster Blocks]], blocks such as Mini-thruster, RAW thruster, Dragon engine, and more with the 1.6 update, these allow propulsion on land and air, only being stopped by the sea, in which most propulsion blocks, other than underwater-centred blocks still work.
*[[Propeller blocks|Propeller Blocks]], which some of them are Propellors, Underwater propellers, Heli engine V1 and V2 (stackable/non-stackable), which all have their own functions.
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available. You can also limit these power cores in sandbox game modes from a range of 1-30, or not at all, same goes with complexity, being a range of 1(?)-700.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground. These can come in many shapes and sizes. Some may be only 3x3, while some may be 7x7, some are thin, some are thick, and they all have different grip on different terrains.
Go kart wheels or slim wheels can be used on planes due to their small size or lightweightdness, while truck wheels or monster truck wheels can be used on grip-focussed vehicles, and may help making a multipurpose vehicle.
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle. These can be used in simple ways, such as decreasing weight when needed, moving wheels left and right, adding suspension to a vehicle, or can be used in a more complex way. They aren’t limited to just that though, they can be used to make complex mechanical arms, make well-made battlebots that may dominate every battle, or even just combining them with logic, and allowing extreme contraptions to be made that can confuse new and old members of the game.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds. These can be used as aesthetics to make the build more slick, using wedges to make builds look cleaner, or to make them more aerodynamic, or both.
There’s multiple types, like wedges (1x2 and 2x1 to 1x4 and 4x4), rounded (1x2, 2x4x2, etc), and corner (2x2x2, 2x1x2, 3x1x3, 4x1x4 and inverted corners for those). If you think you cannot fit a wedge into your build, or cannot fit a type of aerodynamic block into your build, you probably can by moving blocks around.
=== Lights ===
Lights are used to illuminate your vehicles. They can also be used to decorate parts of a vehicle to make them look more dramatic, or to give off the effect of an ominous presence, or some form of higher being if used correctly.
There are only 4 designated light blocks that aren’t accessories, and they’re headlight V1 and 2, one being a bottom attack point, the other being directly on top of the connection point, same goes with twilight V1 and 2.
=== Lift and Drag Blocks ===
Lift and Drag Blocks help lift your vehicles up, or push them down. This is how you make planes, and how you can also make things glide in the air.
There are powered and unpowered aerodynamic blocks for small, simple and normal tailfins, small tailfin are 2x2x1, making them easy to place, but may not be as great to use as the simple tailfin, which may be 4x4x5, and the normal tailfin. The normal tailfin is the only tailfin to have a 2x2 attachment point on top of it, allowing it to have extra blocks attached onto it. It is 4x4x2, which is the widest out of all 3. The powered tailfins are more aerodynamic, but require a power core each, while the unpowered aren’t as efficient in air, but are effective for saving power cores.
Wings come in 2 forms, small and large modular, one taking 2x1x4, the other taking 4x1x4, but each one being better in their own situation. The smaller isn’t as effective in air, but can be used to carry smaller planes into the sky with propulsion. Larger ones are meant for heavier and larger aircraft. Neither have a powered version. The 1.6 update brought more forms of wings, but their best experiences to figure out what they do
=== Tube Blocks ===
Tube Blocks provide a modular system of tubes to use in your vehicles. Many people normally skip over these blocks, thinking of them as worse looking frame blocks, and ignoring them. They hold a secret block a surprising amount of people don’t know about. The only 1x1x1 block to exist in Trailmakers (to my knowledge), that has all 6 connection points as well, and uses no mods at all, meaning it’s completely vanilla.
=== Balance Blocks ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant. When first looking at these, you may only use the buoyancy blocks or pontoons, but the weight blocks are life changers, or even life savers depending on the situation. A build that may flip over every turn can suddenly becomes heavyweight vehicle that can push around tanks at its will (if placed at the bottom of the vehicle)
The buoyancy blocks allow you to just float on water, and using the actual buoyancy block, you can change between being a submarine and being a boat.
=== Gadgets ===
Gadgets are various gadgets and combat equipment for your vehicles. This is where you now make a choice. Do you use the guns to make the worst possible vehicles, or do you use everything efficiently and possible make the best vehicle to exist?
There’s many guns, but many counters to it. This includes fighting with fire, and being a complete tank build with much armour. With 1.6, the airborne update brought a free targeting system, which helps with aiming, which can be turned off, or weakened, when wanted
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met. Some may require little-to-no skill or knowledge, such as the Altitude logic block, or Distance logic block, or the Angle logic block, but AND, OR, XOR and similar logic gates are complex, and can only be successfully used by those confident in the field of computer science and logic gates. Be wary what you get yourself into, Trailmakers
[[Category:Trailmakers]]
[[Category:Balance Blocks]]
[[Category:Inflatable Balloon]]
8efbafca4165fca6abd860da9ae5ad1176cdec29
36
35
2023-09-23T06:54:54Z
Xicozoel
396112
/* Wheels */
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles. These will make up the structure of your build, being both internal and external, aesthetics and frame. Be careful with placement, you don’t want to use too many and reach the complexity limit, or make it so there is a random 1x1 hole that cannot be fixed easily
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]], which can give power to a land-based vehicle, such as Bulldawg engine, RAW engine and Dragon engine, ranging from low power, to higher power, with certain engines being heavier than others, and having different acceleration speeds.
*[[Hover Blocks]], which are blocks like the hover pad, which allows you to float at a specified distance above the ground, and can be used upside down to become a wall-rider. (It can also be used in glitches)
*[[Thruster Blocks]], blocks such as Mini-thruster, RAW thruster, Dragon engine, and more with the 1.6 update, these allow propulsion on land and air, only being stopped by the sea, in which most propulsion blocks, other than underwater-centred blocks still work.
*[[Propeller blocks|Propeller Blocks]], which some of them are Propellors, Underwater propellers, Heli engine V1 and V2 (stackable/non-stackable), which all have their own functions.
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available. You can also limit these power cores in sandbox game modes from a range of 1-30, or not at all, same goes with complexity, being a range of 1(?)-700.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground. These can come in many shapes and sizes. Some may be only 3x3, while some may be 7x7, some are thin, some are thick, and they all have different grip on different terrains.
Go kart wheels or slim wheels (or landing gear) can be used on planes due to their small size or lightweightdness, while truck wheels or monster truck wheels can be used on grip-focussed vehicles, and may help making a multipurpose vehicle, although, aerodynamically? not the best. keep the speed to the lighter, smaller wheels
.
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle. These can be used in simple ways, such as decreasing weight when needed, moving wheels left and right, adding suspension to a vehicle, or can be used in a more complex way. They aren’t limited to just that though, they can be used to make complex mechanical arms, make well-made battlebots that may dominate every battle, or even just combining them with logic, and allowing extreme contraptions to be made that can confuse new and old members of the game.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds. These can be used as aesthetics to make the build more slick, using wedges to make builds look cleaner, or to make them more aerodynamic, or both.
There’s multiple types, like wedges (1x2 and 2x1 to 1x4 and 4x4), rounded (1x2, 2x4x2, etc), and corner (2x2x2, 2x1x2, 3x1x3, 4x1x4 and inverted corners for those). If you think you cannot fit a wedge into your build, or cannot fit a type of aerodynamic block into your build, you probably can by moving blocks around.
=== Lights ===
Lights are used to illuminate your vehicles. They can also be used to decorate parts of a vehicle to make them look more dramatic, or to give off the effect of an ominous presence, or some form of higher being if used correctly.
There are only 4 designated light blocks that aren’t accessories, and they’re headlight V1 and 2, one being a bottom attack point, the other being directly on top of the connection point, same goes with twilight V1 and 2.
=== Lift and Drag Blocks ===
Lift and Drag Blocks help lift your vehicles up, or push them down. This is how you make planes, and how you can also make things glide in the air.
There are powered and unpowered aerodynamic blocks for small, simple and normal tailfins, small tailfin are 2x2x1, making them easy to place, but may not be as great to use as the simple tailfin, which may be 4x4x5, and the normal tailfin. The normal tailfin is the only tailfin to have a 2x2 attachment point on top of it, allowing it to have extra blocks attached onto it. It is 4x4x2, which is the widest out of all 3. The powered tailfins are more aerodynamic, but require a power core each, while the unpowered aren’t as efficient in air, but are effective for saving power cores.
Wings come in 2 forms, small and large modular, one taking 2x1x4, the other taking 4x1x4, but each one being better in their own situation. The smaller isn’t as effective in air, but can be used to carry smaller planes into the sky with propulsion. Larger ones are meant for heavier and larger aircraft. Neither have a powered version. The 1.6 update brought more forms of wings, but their best experiences to figure out what they do
=== Tube Blocks ===
Tube Blocks provide a modular system of tubes to use in your vehicles. Many people normally skip over these blocks, thinking of them as worse looking frame blocks, and ignoring them. They hold a secret block a surprising amount of people don’t know about. The only 1x1x1 block to exist in Trailmakers (to my knowledge), that has all 6 connection points as well, and uses no mods at all, meaning it’s completely vanilla.
=== Balance Blocks ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant. When first looking at these, you may only use the buoyancy blocks or pontoons, but the weight blocks are life changers, or even life savers depending on the situation. A build that may flip over every turn can suddenly becomes heavyweight vehicle that can push around tanks at its will (if placed at the bottom of the vehicle)
The buoyancy blocks allow you to just float on water, and using the actual buoyancy block, you can change between being a submarine and being a boat.
=== Gadgets ===
Gadgets are various gadgets and combat equipment for your vehicles. This is where you now make a choice. Do you use the guns to make the worst possible vehicles, or do you use everything efficiently and possible make the best vehicle to exist?
There’s many guns, but many counters to it. This includes fighting with fire, and being a complete tank build with much armour. With 1.6, the airborne update brought a free targeting system, which helps with aiming, which can be turned off, or weakened, when wanted
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met. Some may require little-to-no skill or knowledge, such as the Altitude logic block, or Distance logic block, or the Angle logic block, but AND, OR, XOR and similar logic gates are complex, and can only be successfully used by those confident in the field of computer science and logic gates. Be wary what you get yourself into, Trailmakers
[[Category:Trailmakers]]
[[Category:Balance Blocks]]
[[Category:Inflatable Balloon]]
ead69a41a3cecebc32bc275cf15403008a4e7f95
Gimbal Jet
0
21
120
119
2023-07-14T19:29:24Z
83.28.167.4
0
Tylko w modyfikacjach
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:Gimbal Jet.png|thumb|Gimbal Jet]]
A jet that always fires downwards. Can be problematic to use in flying machines (only in mods).
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|9.4 kg
|-
|Dimensions
|2 x 2 x 1
|}
[[Category:Stubs]]
[[Category:Thrust]]
0c23d6c6ca7fc71d64f619dc9e84f73e25672323
121
120
2023-08-03T10:54:14Z
Lukkram
396381
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:TM Gimbal Jet.png|thumb|Gimbal Jet]]
A jet that always fires downwards. Can be problematic to use in flying machines (only in mods).
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Weight
|9.4 kg
|-
|Dimensions
|2 x 2 x 1
|}
[[Category:Stubs]]
[[Category:Thrust]]
20753115d59758f95f6afdfa8da7b7b8e9bfbba8
122
121
2023-08-03T11:22:34Z
Lukkram
396381
more data + new image
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:TM Gimbal Jet.png|thumb|[Main color Red][Second color White]|220x220px]]
A jet that always fires downwards. Can be problematic to use in flying machines (only in mods).
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Power (Estimated)
|230
|-
|Weight
|9.4 kg
|-
|Lifting capacity
|78.5 kg
|-
|Lift to Weight
|8.35
|-
|Dimensions
|2 x 2 x 1
|-
|Power to size
|57.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
a9ea163b4445a21ece63622470681387205a3bad
123
122
2023-08-03T11:23:14Z
Lukkram
396381
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:TM Gimbal Jet.png|thumb|[Main color Red] [Second color White]|220x220px]]
A jet that always fires downwards. Can be problematic to use in flying machines (only in mods).
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Power (Estimated)
|230
|-
|Weight
|9.4 kg
|-
|Lifting capacity
|78.5 kg
|-
|Lift to Weight
|8.35
|-
|Dimensions
|2 x 2 x 1
|-
|Power to size
|57.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
778b6c07d479ba8caf401c1955f083ebddf2fc21
124
123
2023-08-03T11:39:18Z
Lukkram
396381
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:TM Gimbal Jet.png|thumb|[Main color Red] [Second color White]|220x220px]]
A jet that always fires downwards. Can be problematic to use in flying machines (only in mods).
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
!1
|-
|Power (Estimated)
|220
|-
|Weight
|9.4 kg
|-
|Lifting capacity
|78.5 kg
|-
|Lift to Weight
|8.35
|-
|Dimensions
|2 x 2 x 1
|-
|Power to size
|57.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
264145eb86278009ebc4c6bbaaa8f30d768d6d28
125
124
2023-08-03T12:03:30Z
Lukkram
396381
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:TM Gimbal Jet.png|thumb|[Main color Red] [Second color White]|220x220px]]
A jet that always fires downwards. Can be problematic to use in flying machines (only in mods).
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|1
|-
!Weight
|9.4 kg
|-
!Power (Estimated)
|220
|-
!Dimensions
|2 x 2 x 1
|-
| colspan="2" |
|-
!Lifting capacity
|78.5 kg
|-
!Lift / Weight
|8.35
|-
!Power / size
|57.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
cd47d682b73e35628ba1d93b35413c2bb0f60350
126
125
2023-08-03T12:08:43Z
Lukkram
396381
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:TM Gimbal Jet.png|thumb|[Main color Red] [Second color White]|220x220px]]
A jet that always fires downwards. Can be problematic to use in flying machines (only in mods).
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|1
|-
!Weight
|9.4 kg
|-
!Power (Estimated)
|220
|-
!Dimensions
|2 x 2 x 1
|-
| colspan="2" |
|-
!Lifting Capacity
|78.5 kg
|-
!Lift / Weight
|8.35
|-
!Power / size
|57.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
20cbcf678f5886bf3c38bb94d3bc2dc6a5ebf506
Minigun
0
30
193
2023-07-31T02:09:29Z
WaterBlaster0317
397975
Created page with "[[File:Minigun.png|thumb]] The Minigun is a block In Trailmakers. It requires a 2x2x6 area to be placed. The Minigun weighs 4.4 kilograms. It can be tinted with both primary & secondary colors. Its aerodynamics from the front, back, left, right, & top is equal to that of a "Fairly Aerodynamic" block (1x1 wedge). The Minigun's aerodynamics from the bottom is equal to a standard block face (red). It has no directional drag other than what comes from its orientation (i..."
wikitext
text/x-wiki
[[File:Minigun.png|thumb]]
The Minigun is a block In Trailmakers. It requires a 2x2x6 area to be placed. The Minigun weighs 4.4 kilograms. It can be tinted with both primary & secondary colors. Its aerodynamics from the front, back, left, right, & top is equal to that of a "Fairly Aerodynamic" block (1x1 wedge). The Minigun's aerodynamics from the bottom is equal to a standard block face (red). It has no directional drag other than what comes from its orientation (it won't push air in any one direction like a wedge, it will push air in all directions equally like a cone). It is a Gadget block that costs 4 Power Cores. The Minigun has enough health to take 8-10 bullets before destruction.
Entering a creation with a minigun on it generates a 3-ringed reticle which represents the average firing line of all gun-based blocks on the creation. This reticle turns red once the auto-aim has "locked on" to a target. This reticle also displays the total ammo for all weapons. If the firing lines of multiple blocks are different enough, another reticle will generate to show the average firing line of one portion of the weapons while the second reticle will show the average of the other portion. This can potentially generate infinite reticles but is limited by the angle difference required to generate another reticle.
The Minigun fires continuously when triggered at approximately 600 rpm. The Minigun can auto-aim at any "target" (pirate AI [Airborne DLC only], enemy player creations) within an approximately 30-degree cone. The Minigun can be fired for 4 seconds before running out of ammo. Ammo is separate for each Minigun. This ammo is continuously replenished over time. From no Ammo to max Ammo, regeneration takes approximately 6 seconds.
The Minigun has one keymap: its fire button. this keymap can be set toggle, where the fire button will be activated after the initial keypress until the release of a second keypress. The Minigun has the standard Delay, Duration, & Pause seen in most blocks with logic in Trailmakers, where Delay requires a minimum activation time before the block's action, Duration sets a maximum activation time before block action is stopped, & Pause sets a time before the deactivation caused by Duration is reset, but if the time is set to 0, the block will not activate again until the key is released & pressed again. The Minigun also has a unique "Auto Aim Scale" value. This value sets the radius of the auto-aim cone relative to its 30-degree maximum (1 is the max 30 degrees, .5 is 15 degrees, etc.).
bdb9b501be606651f3d3068a855509f4f05424ea
Mini-Thuster
0
29
188
187
2023-08-03T11:58:27Z
Lukkram
396381
wikitext
text/x-wiki
{{Stub}}
== Thruster ==
[[File:TM Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
A small and cheap jet engine with low thrust.
It used to be called "Mini-Thruster" but has been renamed to "Thruster" after the Wings and Weapons update
{| class="fandom-table"
|+Engine Data
|-
![[Power cores]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|-
|
|
|-
!Lifting Capacity
|28.6 kg
|-
!Lift / Weight
|2.9
|-
!Power / Size
|20
|}
[[Category:Stubs]]
[[Category:Thrust]]
3635885bf99a3d17e7c5e99d8d0c27ffa44bca58
189
188
2023-08-03T12:00:15Z
Lukkram
396381
more data + new image
wikitext
text/x-wiki
{{Stub}}
== Thruster ==
[[File:TM Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
A small and cheap jet engine with low thrust.
It used to be called "Mini-Thruster" but has been renamed to "Thruster" after the Wings and Weapons update
{| class="fandom-table"
|+Engine Data
|-
![[Power cores]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|28.6 kg
|-
!Lift / Weight
|2.9
|-
!Power / Size
|20
|}
[[Category:Stubs]]
[[Category:Thrust]]
88e94a97d231ec233eebf6abaea9f46450010b52
190
189
2023-09-12T12:42:32Z
1.157.75.94
0
wikitext
text/x-wiki
{{Stub}}
== Thruster ==
[[File:TM Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
A small and cheap jet engine with low thrust.
It used to be called "Mini-Thruster" but has been renamed to "Thruster" after the Wings and Weapons update
{| class="fandom-table"
|+Engine Data
|-
![[Power ]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|28.6 kg
|-
!Lift / Weight
|2.9
|-
!Power / Size
|20
|}
[[Category:Stubs]]
[[Category:Thrust]]
75f7aa0388a169308755b79fa067a8f57e4b166b
Dragon Jet
0
17
79
78
2023-08-03T12:07:43Z
Lukkram
396381
more data + new image
wikitext
text/x-wiki
{{Stub}}
== Dragon Jet ==
[[File:TM Dragon Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine that does not overheat.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|3
|-
!Weight
|30 kg
|-
!Power
|300
|-
!Dimensions
|2 x 3 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|106.7 kg
|-
!Lift / Weight
|3.6
|-
!Power / Size
|25
|}
[[Category:Stubs]]
8cbec92c0cd485b5bd674b0692dcf5eadd18c17d
80
79
2023-08-03T12:47:31Z
Lukkram
396381
Adding categories
wikitext
text/x-wiki
{{Stub}}
== Dragon Jet ==
[[File:TM Dragon Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine that does not overheat.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|3
|-
!Weight
|30 kg
|-
!Power
|300
|-
!Dimensions
|2 x 3 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|106.7 kg
|-
!Lift / Weight
|3.6
|-
!Power / Size
|25
|}
[[Category:Stubs]]
[[Category:Thrust]]
1157d50e38747e49e401f2851d3fbedc88a35ee2
RAW Jet
0
34
222
221
2023-08-03T12:13:35Z
Lukkram
396381
more data + new image
wikitext
text/x-wiki
{{Stub}}
== RAW Jet ==
[[File:TM Raw Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine with a cooldown.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|53.1 kg
|-
!Power
|750
|-
!Dimensions
|2 x 5 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|268.4 kg
|-
!Lift / Weight
|5.05
|-
!Power / Size
|37.5
|}
[[Category:Stubs]]
0df7b9fc1f7b51ec05756093e39615013884b2f0
223
222
2023-08-03T12:43:58Z
Lukkram
396381
Adding categories
wikitext
text/x-wiki
{{Stub}}
== RAW Jet ==
[[File:TM Raw Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine with a cooldown.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|53.1 kg
|-
!Power
|750
|-
!Dimensions
|2 x 5 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|268.4 kg
|-
!Lift / Weight
|5.05
|-
!Power / Size
|37.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
802dd8fcbf1cf17b73a41ba723ade3b6008175e4
224
223
2023-09-08T23:39:24Z
94.254.108.164
0
/* RAW Jet */
wikitext
text/x-wiki
{{Stub}}
== RAW Jet ==
[[File:TM Raw Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine with a cooldown.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|53.1 kg
|-
!Power
|750
|-
!Dimensions
|2 x 5 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|268.4 kg
|-
!Lift / Weight
|5.05
|-
!Power / Size
|37.5
|-
!Thrust time
|1.16 sec
!Cooldown
|3 sec
|}
[[Category:Stubs]]
[[Category:Thrust]]
6533291a3d506eacb0f3da16f50bd9c8af4e067b
225
224
2023-09-08T23:42:53Z
94.254.108.164
0
/* RAW Jet */
wikitext
text/x-wiki
{{Stub}}
== RAW Jet ==
[[File:TM Raw Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine with a cooldown. After running 1.16 secounds goes into 3 secound cooldown.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|53.1 kg
|-
!Power
|750
|-
!Dimensions
|2 x 5 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|268.4 kg
|-
!Lift / Weight
|5.05
|-
!Power / Size
|37.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
e323f3ed12b99c61699cc17fa0ca646fb64cb92a
226
225
2023-09-16T14:10:28Z
212.145.139.52
0
Fix typos: secound ---> second (and likewise for the plural form)
wikitext
text/x-wiki
{{Stub}}
== RAW Jet ==
[[File:TM Raw Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine with a cooldown. After running 1.16 seconds goes into 3 second cooldown.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|53.1 kg
|-
!Power
|750
|-
!Dimensions
|2 x 5 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|268.4 kg
|-
!Lift / Weight
|5.05
|-
!Power / Size
|37.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
adc191dfe880e863043ac6ecd0885502d2d8da85
Large Jet
0
25
151
2023-08-03T12:32:22Z
Lukkram
396381
Created page with "[[File:TM Large Jet.png|thumb|[Main color Red] [Second color White]]] A huge Jet Engine with the most power in the game. {| class="fandom-table" |+Engine Data ![[Power cores|Power Cores]] |4 |- !Weight |40 kg |- !Power |800 |- !Dimensions |4 x 8 x 5 |- | colspan="2" | |- !Lifting Capacity |285.5 kg |- !Lift / Weight |7.1 |- !Power / Size |5 |}"
wikitext
text/x-wiki
[[File:TM Large Jet.png|thumb|[Main color Red] [Second color White]]]
A huge Jet Engine with the most power in the game.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|4
|-
!Weight
|40 kg
|-
!Power
|800
|-
!Dimensions
|4 x 8 x 5
|-
| colspan="2" |
|-
!Lifting Capacity
|285.5 kg
|-
!Lift / Weight
|7.1
|-
!Power / Size
|5
|}
f9876b8a14024338788951bb185c1963ceebb8da
152
151
2023-08-03T12:33:06Z
Lukkram
396381
wikitext
text/x-wiki
[[File:TM Large Jet.png|thumb|[Main color Red] [Second color White]|220x220px]]
A huge Jet Engine with the most power in the game.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|4
|-
!Weight
|40 kg
|-
!Power
|800
|-
!Dimensions
|4 x 8 x 5
|-
| colspan="2" |
|-
!Lifting Capacity
|285.5 kg
|-
!Lift / Weight
|7.1
|-
!Power / Size
|5
|}
a067cdd49290c281729311a4d61efbecc77419a5
153
152
2023-08-03T12:43:45Z
Lukkram
396381
Adding categories
wikitext
text/x-wiki
[[File:TM Large Jet.png|thumb|[Main color Red] [Second color White]|220x220px]]
A huge Jet Engine with the most power in the game.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|4
|-
!Weight
|40 kg
|-
!Power
|800
|-
!Dimensions
|4 x 8 x 5
|-
| colspan="2" |
|-
!Lifting Capacity
|285.5 kg
|-
!Lift / Weight
|7.1
|-
!Power / Size
|5
|}
[[Category:Stubs]]
[[Category:Thrust]]
e85248bdfb2337badb2e0b1175d229274933f7b6
154
153
2023-08-03T12:46:07Z
Lukkram
396381
wikitext
text/x-wiki
== Large Jet ==
[[File:TM Large Jet.png|thumb|[Main color Red] [Second color White]|220x220px]]
A huge Jet Engine with the most power in the game.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|4
|-
!Weight
|40 kg
|-
!Power
|800
|-
!Dimensions
|4 x 8 x 5
|-
| colspan="2" |
|-
!Lifting Capacity
|285.5 kg
|-
!Lift / Weight
|7.1
|-
!Power / Size
|5
|}
[[Category:Stubs]]
[[Category:Thrust]]
20ece0f1a0033ead71e47973af0c93d47902d0f6
Rocket Thruster
0
37
236
2023-08-03T12:41:05Z
Lukkram
396381
Created page with "[[File:TM Rocket Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]] The smallest Engine in the game. It costs the same as the Thruster, but is weaker. {| class="fandom-table" |+Engine Details !Power Cores |1 |- !Weight |9.8 kg |- !Power |60 |- !Dimensions |1 x 2 x 1 |- | colspan="2" | |- !Lifting Capacity |21.6 kg |- !Lift / Weight |2.2 |- !Power / Size |30 |}"
wikitext
text/x-wiki
[[File:TM Rocket Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
The smallest Engine in the game. It costs the same as the Thruster, but is weaker.
{| class="fandom-table"
|+Engine Details
!Power Cores
|1
|-
!Weight
|9.8 kg
|-
!Power
|60
|-
!Dimensions
|1 x 2 x 1
|-
| colspan="2" |
|-
!Lifting Capacity
|21.6 kg
|-
!Lift / Weight
|2.2
|-
!Power / Size
|30
|}
47082a6cd83f2eda9f57ad524dcb695b8602e094
237
236
2023-08-03T12:42:16Z
Lukkram
396381
Adding categories
wikitext
text/x-wiki
[[File:TM Rocket Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
The smallest Engine in the game. It costs the same as the Thruster, but is weaker.
{| class="fandom-table"
|+Engine Details
!Power Cores
|1
|-
!Weight
|9.8 kg
|-
!Power
|60
|-
!Dimensions
|1 x 2 x 1
|-
| colspan="2" |
|-
!Lifting Capacity
|21.6 kg
|-
!Lift / Weight
|2.2
|-
!Power / Size
|30
|}
[[Category:Stubs]]
afe6291379860b4553cc0bfcf4267a14530ba2ba
238
237
2023-08-03T12:42:27Z
Lukkram
396381
Adding categories
wikitext
text/x-wiki
[[File:TM Rocket Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
The smallest Engine in the game. It costs the same as the Thruster, but is weaker.
{| class="fandom-table"
|+Engine Details
!Power Cores
|1
|-
!Weight
|9.8 kg
|-
!Power
|60
|-
!Dimensions
|1 x 2 x 1
|-
| colspan="2" |
|-
!Lifting Capacity
|21.6 kg
|-
!Lift / Weight
|2.2
|-
!Power / Size
|30
|}
[[Category:Stubs]]
[[Category:Thrust]]
01a96dd20d58d5e00f694c3811a84ee502413432
239
238
2023-08-03T12:46:40Z
Lukkram
396381
wikitext
text/x-wiki
== Rocket Thruster ==
[[File:TM Rocket Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
The smallest Engine in the game. It costs the same as the Thruster, but is weaker.
{| class="fandom-table"
|+Engine Details
!Power Cores
|1
|-
!Weight
|9.8 kg
|-
!Power
|60
|-
!Dimensions
|1 x 2 x 1
|-
| colspan="2" |
|-
!Lifting Capacity
|21.6 kg
|-
!Lift / Weight
|2.2
|-
!Power / Size
|30
|}
[[Category:Stubs]]
[[Category:Thrust]]
56dc9c8acac9b2a9bfbb4e19229cfc72ec923f75
240
239
2023-08-03T13:44:17Z
Lukkram
396381
wikitext
text/x-wiki
== Rocket Thruster ==
[[File:TM Rocket Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
The smallest Engine in the game. It costs the same as the Thruster, but is weaker.
{| class="fandom-table"
|+Engine Details
![[Power cores|Power Cores]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|60
|-
!Dimensions
|1 x 2 x 1
|-
| colspan="2" |
|-
!Lifting Capacity
|21.6 kg
|-
!Lift / Weight
|2.2
|-
!Power / Size
|30
|}
[[Category:Stubs]]
[[Category:Thrust]]
182bf1e509fb008099829804795c9ef12e8dfaaa
Propeller Blocks
0
32
211
210
2023-08-03T15:52:10Z
Lukkram
396381
more data + new images
wikitext
text/x-wiki
{{Stub}}
== Large Propeller ==
[[File:TM Large Propeller.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|3
|-
!Weight
|25 kg
|-
!Power
|350
|-
!Dimensions
|2 x 2 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|125 kg
|-
!Lift / Weight
|5
|-
!Power / Size
|43.75
|-
!Power / Cores
|116.6
|}
Provides propulsive power. Part of Airborne DLC.
== Propeller ==
[[File:TM Propeller.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|12.5 kg
|-
!Power
|200
|-
!Dimensions
|2 x 2 x 1
|-
| colspan="2" |
|-
!Lifting Capacity
|71.5 kg
|-
!Lift / Weight
|5.72
|-
!Power / Size
|50
|-
!Power / Cores
|100
|}
Provides propulsive power.
== Helicopter Engine ==
[[File:TM Heli.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|1
|-
!Weight
|5.6 kg
|-
!Dimensions
|2 x 2 x 1
|}
Block that can spin around quickly.
== Stackable Helicopter Engine ==
[[File:TM Stack Heli.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|1
|-
!Weight
|5.6 kg
|-
!Dimensions
|2 x 2 x 1
|}
A helicopter engine with a static top and bottom. Previously called "Helicopter Engine v2".
== Outboard Boat Engine ==
[[File:TM Outboard.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|12.5 kg
|-
!Power
|~ 560
|-
!Dimensions
|2 x 2 x 4
|-
| colspan="2" |
|-
!Lifting Capacity
|~ 198.65 kg
|-
!Lift / Weight
|~ 15.9
|-
!Power / Size
|35
|-
!Power / Cores
|280
|}
Provides propulsion in water. Part of High Seas DLC.
== Underwater Propeller ==
[[File:TM Underwater.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|1
|-
!Weight
|12.5 kg
|-
!Power
|~ 280
|-
!Dimensions
|2 x 4 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|~ 101.5 kg
|-
!Lift / Weight
|8.12
|-
!Power / Size
|17.5
|-
!Power / Cores
|280
|}
Provides propulsion in water.
[[Category:Stubs]]
1f35701a3907b3ed97ec2ecef8db202cb3d88207
Propulsion Blocks
0
33
216
215
2023-08-03T15:57:12Z
Lukkram
396381
wikitext
text/x-wiki
Propulsion Blocks are [[blocks]] that moves your vehicle.
They can be split into the following categories:
* [[Engine Blocks]]
* [[Hover Blocks]]
* [[Thruster Blocks]]
* [[Propeller Blocks]]
abe333237b32b79a86af38df6f5d4ae84f2573d7
Frame Blocks
0
19
100
99
2023-08-03T16:00:41Z
Lukkram
396381
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
=== 1. Blocks ===
"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides
=== 2. Grid Blocks ===
"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.
=== 3. Connectors ===
"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.
=== 4. Shield ===
"Armor for your vehicle" - Used as defense against projectiles launched from the cannons, Also useful for covering up studs on blocks for a sleeker look.
===5. Extras===
The Frame section also includes the following blocks: Small Porthole, Large Porthole, Airplane Window, and Mast (High Seas DLC).
{| class="fandom-table"
|+Frame Blocks
!Name
!Size
!Weight
|-
|Block 1x2
|1x2x2
|0.6 kg
|-
|Block 1x3
|1x3x1
|0.9 kg
|-
|Block 1x4
|1x4x1
|1.2kg
|-
|Block 2x4
|2x4x1
|2.5 kg
|-
|Block 2x2x2
|2x2x2
|2.5 kg
|-
|Block 4x8
|4x8x1
|10 kg
|-
| colspan="3" |
|-
|Grid Block 1x2
|1x2x1
|0.3 kg
|-
|Grid Block 1x4
|1x4x1
| 0.6 kg
|-
| colspan="3" |
|-
| Flat Connector 1x2
|1x2x1*
|0.1 kg
|-
|Flat Connector 1x3
|1x3x1*
|0.2 kg
|-
|Flat Connector 1x4
|1x4x1*
|0.2 kg
|-
| colspan="3" |
|-
|Shield 2x1
|2x1x1*
|0.6 kg
|-
|Shield 2x2
|2x2x1*
|1.2 kg
|-
|Shield 2x4
|2x4x1*
|2.5 kg
|-
| colspan="3" |
|-
|Small Porthole
|1x2x1
|1.2 Kg
|-
|Large Porthole
|4x4x3
|5 kg
|-
|Airplane Window
|2x2x1
|1.1 kg
|-
|Mast
|2x8x2
|5 kg
|}
[[File:All Frame Blocks Image.jpg|frameless|992x992px]]
75017a749842efaf3e1a007ef8bdfeae057f77a5
Aerodynamic Blocks
0
12
53
52
2023-08-03T16:35:47Z
Lukkram
396381
wikitext
text/x-wiki
Aerodynamic Blocks are [[blocks]] that are very aerodynamic and good for designs because they allow air to flow past the vehicle and help achieving high speeds, as well as achieve interesting shapes.
{| class="fandom-table"
|+Aerodynamic Blocks
!Name
!Size
!Weight
!Angle/Radius
!Aerodynamics
|-
|Wedge 1x2
|1x2x1
|0.3 kg
|45°
|Fairly
|-
|Wedge 2x1x2
|2x1x2
|0.6 kg
|45°
|Fairly
|-
|Wedge 2x2x2
|2x2x2
|1.2 kg
|45°
|Fairly
|-
|Wedge 2x4x2
|2x4x2
|2.5 kg
|45°
|Fairly
|-
|Wedge 2x1
|2x1x1
|0.3 kg
|26.6°
|Moderately
|-
|Wedge 2x2
|2x2x1
|0.6 kg
|26.6°
|Moderately
|-
|Wedge 2x4
|2x4x1
|1.2 kg
|26.6°
|Moderately
|-
|Wedge 3x1
|3x1x1
|0.5 kg
|18.4°
|Very
|-
|Wedge 3x4
|3x4x1
|1.9 kg
|18.4°
|Very
|-
|Wedge 4x1
|4x1x1
|0.6 kg
|14°
|Extremely
|-
|Wedge 4x4
|4x4x1
|2.5 kg
|14°
|Extremely
|-
| colspan="5" |
|-
|Rounded 1x2
|1x2x1
|0.5 kg
|1 block
|Fairly
|-
|Rounded 2x1
|2x1x1
|0.6 kg
|1 block
|Fairly
|-
|Rounded 2x4
|2x4x1
|2.2 kg
|1 block
|Fairly
|-
|Rounded 2x1x2
|2x1x2
|0.8 kg
|2 blocks
|Fairly
|-
|Rounded 2x4x2
|2x4x2
|3.9 kg
|2 blocks
|Fairly
|-
|Rounded Inverted 1x2
|1x2x1
|0.3 kg
|1 block
|Fairly
|-
| colspan="5" |
|-
|Rounded Corner 1x2
|1x2x1
|0.4 kg
|1 block
|Fairly
|-
|Rounded Corner 2x2x2
|2x2x2
|1.2 kg
|2 blocks
|Fairly
|-
|Rounded Corner Inverted 1x2
|1x2x1
|0.2 kg
|1 block
|Fairly
|-
| colspan="5" |
|-
|Wedge Corner 2x2x2
|2x2x2
|0.4 kg
|45° & 45°
|Fairly
|-
|Wedge Corner 2x2x1
|2x2x1
|0.2 kg
|26.6° & 45°
|Moderately
|-
|Wedge Corner 3x3x1
|3x3x1
|0.5 kg
|18.4° & 45°
|Very
|-
|Wedge Corner 4x4x1
|4x4x1
|0.8 kg
|14° & 45°
|Extremely
|-
| colspan="5" |
|-
|Inverted Corner 2x2x2
|2x2x2
|2.1 kg
|45° & 45°
|Fairly
|-
|Inverted Corner 1x2x2
|1x2x2
|1 kg
|26.6° &45°
|Fairly
|-
|Inverted Corner 1x3x3
|1x3x3
|2.4 kg
|18.4° & 45°
|Fairly
|-
|Inverted Corner 1x4x4
|1x4x4
|4.2 kg
|14° & 45°
|Fairly
|}
[[File:Aerodynamic Blocks.png|thumb|1020x1020px|All of the Aerodynamic Blocks]]
97bf12421e971fcb0183121bb56fc44b5485c42d
54
53
2023-08-03T16:38:02Z
Lukkram
396381
wikitext
text/x-wiki
Aerodynamic Blocks are [[blocks]] that are very aerodynamic and good for designs because they allow air to flow past the vehicle and help achieving high speeds, as well as achieve interesting shapes.
{| class="fandom-table"
|+Aerodynamic Blocks
!Name
!Size
!Weight
!Angle/Radius
!Aerodynamics
|-
|Wedge 1x2
|1x2x1
|0.3 kg
|45°
|Fairly
|-
|Wedge 2x1x2
|2x1x2
|0.6 kg
|45°
|Fairly
|-
|Wedge 2x2x2
|2x2x2
|1.2 kg
|45°
|Fairly
|-
|Wedge 2x4x2
|2x4x2
|2.5 kg
|45°
|Fairly
|-
|Wedge 2x1
|2x1x1
|0.3 kg
|26.6°
|Moderately
|-
|Wedge 2x2
|2x2x1
|0.6 kg
|26.6°
|Moderately
|-
|Wedge 2x4
|2x4x1
|1.2 kg
|26.6°
|Moderately
|-
|Wedge 3x1
|3x1x1
|0.5 kg
|18.4°
|Very
|-
|Wedge 3x4
|3x4x1
|1.9 kg
|18.4°
|Very
|-
|Wedge 4x1
|4x1x1
|0.6 kg
|14°
|Extremely
|-
|Wedge 4x4
|4x4x1
|2.5 kg
|14°
|Extremely
|-
| colspan="5" |
|-
|Rounded 1x2
|1x2x1
|0.5 kg
|1 block
|Fairly
|-
|Rounded 2x1
|2x1x1
|0.6 kg
|1 block
|Fairly
|-
|Rounded 2x4
|2x4x1
|2.2 kg
|1 block
|Fairly
|-
|Rounded 2x1x2
|2x1x2
|0.8 kg
|2 blocks
|Fairly
|-
|Rounded 2x4x2
|2x4x2
|3.9 kg
|2 blocks
|Fairly
|-
| colspan="5" |
|-
|Rounded Corner 1x2
|1x2x1
|0.4 kg
|1 block
|Fairly
|-
|Rounded Corner 2x2x2
|2x2x2
|1.2 kg
|2 blocks
|Fairly
|-
| colspan="5" |
|-
|Rounded Inverted 1x2
|1x2x1
|0.3 kg
|1 block
|Fairly
|-
|Rounded Corner Inverted 1x2
|1x2x1
|0.2 kg
|1 block
|Fairly
|-
| colspan="5" |
|-
|Wedge Corner 2x2x2
|2x2x2
|0.4 kg
|45° & 45°
|Fairly
|-
|Wedge Corner 2x2x1
|2x2x1
|0.2 kg
|26.6° & 45°
|Moderately
|-
|Wedge Corner 3x3x1
|3x3x1
|0.5 kg
|18.4° & 45°
|Very
|-
|Wedge Corner 4x4x1
|4x4x1
|0.8 kg
|14° & 45°
|Extremely
|-
| colspan="5" |
|-
|Inverted Corner 2x2x2
|2x2x2
|2.1 kg
|45° & 45°
|Fairly
|-
|Inverted Corner 1x2x2
|1x2x2
|1 kg
|26.6° &45°
|Fairly
|-
|Inverted Corner 1x3x3
|1x3x3
|2.4 kg
|18.4° & 45°
|Fairly
|-
|Inverted Corner 1x4x4
|1x4x4
|4.2 kg
|14° & 45°
|Fairly
|}
[[File:Aerodynamic Blocks.png|thumb|1020x1020px|All of the Aerodynamic Blocks]]
29b95708a5b9c78dcb608dc0edb204be21cedff3
Sandbox
0
39
252
2023-09-18T13:13:34Z
Zonneschijn77
397978
i didnt change anything, i made this page.
wikitext
text/x-wiki
Sandbox is a gamemode in trailmakers. It can be accessed by clicking Singleplayer or Multiplayer, then selecting sandbox.
=== Building ===
In sandbox you can't die, and have acces to all building pieces. (Except Cosmetic Blocks.) Players can use as many power cores as they want.
=== Maps ===
There currently are 5 Sandbox maps: Danger zone, Treasure Island, Test Zone, Airborne and High Seas. The Danger zone map and the Treasure Island map have fire rings in them, when players fly through every fire ring (with a vehicle) they get the Man in black achievement.
[[File:Trailmakers Achievement (Man in black).png|alt=Man in black achievement. Picture of a fire ring.|thumb]]
This article isn't done, you can edit it as you want.
My second article ive made.
11bd17732dc8cd7e2aa79d932d757c82ac826cb9
Thruster Blocks
0
43
284
283
2023-10-23T13:09:00Z
194.73.107.131
0
Corrected improper use of 'then' to 'than'.
wikitext
text/x-wiki
{{Stub}}
There are 6 thruster blocks currently in Trailmakers. Those 6 blocks are:
*[[Rocket Thruster]]
*[[Mini-Thuster|Thruster]]
*[[RAW Jet]]
* [[Dragon Jet]]
* [[Large Jet]]
* [[Gimbal Jet]]
=== Power ===
Each engine has a power rating assigned to it, the exceptions being the Large Propeller, Propeller, Outboard Boat Engine, Underwater Propeller, Helicopter Engine, Stackable Helicopter Engine and the Gimbal Jet.
Those ratings are:
While most engines are powerful the Rocket Thruster and Thruster are the only exception
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
|Rocket Thruster
|60
|-
| Thruster
| 80
|-
|Gimbal Jet
|220
|-
| Dragon Jet
| 300
|-
| RAW Jet
| 750
|-
|Large Jet
|800
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the Thruster, RAW and Dragon, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller. User "lukkram" re-did the previous experiments and included the new blocks from 1.6 update.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
|Rocket Thruster
|21.6 kg
|-
| Thruster
| 28.6 kg
|-
| Gimbal Jet
| 78.57167 kg (more precise)
|-
| Dragon Jet
| 107.15 kg
|-
| RAW Jet
| 268.4 kg
|-
|Large Jet
|285.5 kg
|}
To create neutral buoyancy using gimbals, the ratio is precisely 0.01245674740481 gimbal power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater than 1 then divide it until it's less than 1 and for every divide you need to a gimbal jet and set it to the value that the function is outputting.
Interestingly, the RAW Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the RAW Jet only has a 50% uptime, according to testing done by user "Manchweld"
Additional testing on the RAW Jet has revealed that after overheating, it has doubled cooling meaning that the consistent uptime is about 33% without overheating. This still gives it more power than it's power core equivalent of two thrusters.
15dc1cf21509f9b848ac9903d25a63a5fee2626c
285
284
2023-11-05T06:01:49Z
136.158.101.72
0
Correct spellings
wikitext
text/x-wiki
There are 7 thruster blocks currently in Trailmakers. Those 7 blocks are:
*[[Rocket Thruster]]
*[[Small-Thruster|Siberian Thruster]]
*[[Sodium Jet]]
* [[German Jet]]
* [[Large Jet]]
* [[Glado Jet]]
* [[Asian Jet]]
=== Power ===
Each engine has a power rating assigned to it, the exceptions being the Large Propeller, Propeller, Outboard Plane Engine, Space Propeller, Malaysian Engine, Stackable Malaysian Engine and the Glado Jet.
Those ratings are:
While most engines are powerful the Siberian Thruster is the only exception
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
|Rocket Thruster
|600
|-
| Siberian Thruster
| 120
|-
|Glado Jet
| 300
|-
| German Jet
| 450
|-
| Sodium Jet
| 1700
|-
|Large Jet
|6000
|-
|Asian Jet
|70000
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the Thruster, RAW and Dragon, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller. User "lukkram" re-did the previous experiments and included the new blocks from 1.6 update.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
|Rocket Thruster
|70.6 kg
|-
| Siberian Thruster
| 34.6 kg
|-
| Glado Jet
| 78.57167 kg (more precise)
|-
| German Jet
| 107.15 kg
|-
| Sodium Jet
| 268.4 kg
|-
|Large Jet
|285.5 kg
|-
|Asian Jet
|2340.1 kg
|}
To create neutral buoyancy using glados, the ratio is precisely 0.01245674740481 glado power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater than 1 then divide it until it's less than 1 and for every divide you need to a glado jet and set it to the value that the function is outputting.
Interestingly, the Sodium Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the Sodium Jet only has a 50% uptime, according to testing done by user "Manchweld"
Additional testing on the Sodium Jet has revealed that after overcooling, it has doubled heating meaning that the consistent uptime is about 33% without overcooling. This still gives it more power than it's power core equivalent of two Siberian thrusters.
df1672df1e557d3a31faf324b107372dad1777ac
286
285
2023-11-09T06:38:09Z
136.158.101.72
0
Idk
wikitext
text/x-wiki
There are 7 thruster blocks currently in Trailmakers. Those 7 blocks are:
*Rocket Thruster
*[[Small-Thruster|Siberian Thruster]]
*[[Sodium Jet]]
* [[German Jet]]
* Large Jet
* [[Glado Jet]]
* [[Asian Jet]]
=== Power ===
Each engine has a power rating assigned to it, the exceptions being the Large Propeller, Propeller, Outboard Plane Engine, Space Propeller, Malaysian Engine, Stackable Malaysian Engine and the Glado Jet.
Those ratings are:
While most engines are powerful the Siberian Thruster is the only exception
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
|Rocket Thruster
|600
|-
| Siberian Thruster
| 120
|-
|Glado Jet
| 300
|-
| German Jet
| 450
|-
| Sodium Jet
| 1700
|-
|Large Jet
|6000
|-
|Asian Jet
|70000
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the Thruster, RAW and Dragon, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller. User "lukkram" re-did the previous experiments and included the new blocks from 1.6 update.
{| class="wikitable" border="1"
|-
! Engine Name
! Lifting Weight (Including the engine itself)
|-
|Rocket Thruster
|70.6 kg
|-
| Siberian Thruster
| 34.6 kg
|-
| Glado Jet
| 78.57167 kg (more precise)
|-
| German Jet
| 107.15 kg
|-
| Sodium Jet
| 268.4 kg
|-
|Large Jet
|285.5 kg
|-
|Asian Jet
|2340.1 kg
|}
To create neutral buoyancy using glados, the ratio is precisely 0.01245674740481 glado power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater than 1 then divide it until it's less than 1 and for every divide you need to a glado jet and set it to the value that the function is outputting.
Interestingly, the Sodium Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the Sodium Jet only has a 50% uptime, according to testing done by user "Manchweld"
Additional testing on the Sodium Jet has revealed that after overcooling, it has doubled heating meaning that the consistent uptime is about 33% without overcooling. This still gives it more power than it's power core equivalent of two Siberian thrusters.
34629bc6aa1b458b3b2421c1045c5bbc46f71f99
287
286
2023-11-12T02:35:39Z
CardZed
397965
Fixed page griefing.
wikitext
text/x-wiki
There are 6 thruster blocks currently in Trailmakers. Those 6 blocks are:
*Rocket Thruster
*Mini Thruster
*RAW Jet
* Dragon Jet
* Large Jet
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the exceptions being the Large Propeller, Propeller, Outboard Boat Engine, Underwater Propeller, Helicopter Engine, Stackable Helicopter Engine and the Gimbal Jet.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
|Rocket Thruster
|60
|-
| Mini Thruster
| 80
|-
|Gimbal Jet
| 220
|-
| Dragon Jet
| 300
|-
| RAW Jet
| 750
|-
|Large Jet
|800
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the Thruster, RAW and Dragon, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller. User "lukkram" re-did the previous experiments and included the new blocks from 1.6 update.
{| class="wikitable" border="1"
|-
!Engine Name
! Lifting Weight (Including the engine itself)
|-
|Rocket Thruster
|70.6 kg
|-
|Mini Thruster
| 34.6 kg
|-
|Gimbal Jet
| 78.57167 kg (more precise)
|-
|Dragon Jet
| 107.15 kg
|-
|RAW Jet
| 268.4 kg
|-
|Large Jet
|285.5 kg
|-
|
|
|}
To create neutral buoyancy using gimbals, the ratio is precisely 0.01245674740481 gimbal power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater than 1 then divide it until it's less than 1 and for every divide you need to add a gimbal jet and set it to the value that the function is outputting.
Interestingly, the RAW Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the RAW Jet only has a 50% uptime, according to testing done by user "Manchweld"
Additional testing on the RAW Jet has revealed that after overheating. it has doubled heating meaning that the consistent uptime is about 33% without overheating. This still gives it more power than it's power core equivalent of two Mini Thrusters.
14c41556fafe0cd5c5aa0769922f18b73665d007
288
287
2023-11-12T02:39:08Z
CardZed
397965
Gimbal jet rating, fixed empty row.
wikitext
text/x-wiki
There are 6 thruster blocks currently in Trailmakers. Those 6 blocks are:
*Rocket Thruster
*Mini Thruster
*RAW Jet
* Dragon Jet
* Large Jet
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the exceptions being the Large Propeller, Propeller, Outboard Boat Engine, Underwater Propeller, Helicopter Engine, and the Stackable Helicopter Engine.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
|Rocket Thruster
|60
|-
| Mini Thruster
| 80
|-
|Gimbal Jet
| 220
|-
| Dragon Jet
| 300
|-
| RAW Jet
| 750
|-
|Large Jet
|800
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the Thruster, RAW and Dragon, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller. User "lukkram" re-did the previous experiments and included the new blocks from 1.6 update.
{| class="wikitable" border="1"
|-
!Engine Name
! Lifting Weight (Including the engine itself)
|-
|Rocket Thruster
|70.6 kg
|-
|Mini Thruster
| 34.6 kg
|-
|Gimbal Jet
| 78.57167 kg (more precise)
|-
|Dragon Jet
| 107.15 kg
|-
|RAW Jet
| 268.4 kg
|-
|Large Jet
|285.5 kg
|}
To create neutral buoyancy using gimbals, the ratio is precisely 0.01245674740481 gimbal power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater than 1 then divide it until it's less than 1 and for every divide you need to add a gimbal jet and set it to the value that the function is outputting.
Interestingly, the RAW Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the RAW Jet only has a 50% uptime, according to testing done by user "Manchweld"
Additional testing on the RAW Jet has revealed that after overheating. it has doubled heating meaning that the consistent uptime is about 33% without overheating. This still gives it more power than it's power core equivalent of two Mini Thrusters.
ddd81e8e844e24f8d782a4a986da8a66367fce25
Template:Bool
10
68
383
2023-11-03T07:50:53Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Bool]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>{{#switch:{{lc:{{{1|}}}}}|y|1|yes|true=y|#default={{#if:{{{1|}}}||{{{2|}}}}}}}</includeonly><noinclude>{{doc}}
{{language info|en=Template:Bool}}
</noinclude>
08bda7d46f97a71529fe2eea6893f1668fbdf584
Template:Category
10
77
405
2023-11-03T07:53:03Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Category]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly><!--
-->{{#if:{{langList|isOnWiki|{{{lang|{{lang|}}}}}}}|<!--
-->[[Category:<!--
-->{{{1|}}}/{{{lang|{{lang|}}}}}<!-- category name
-->{{#ifeq:{{{2|-unset}}}|{{{2|unset-}}}|{{!}}{{{2}}}}}<!-- category sortkey, only if set (can be blank)
--> ]]<!-- the space here is needed for blank sortkeys
-->|<!--
// loading glossary for this language:
-->{{#if:{{#dplvar:_cate_glossary_{{{lang|{{lang|}}}}}}}|| {{category/db-{{{lang|{{lang|}}}}}}} }}<!--
-->[[Category:<!--
-->{{#or:{{#dplvar:_cate_glossary-{{ucfirst:{{{1|}}}}}}}|{{tr|{{{1|}}}|lang={{{lang|{{lang|}}}}}}}}}<!-- category name
-->{{#ifeq:{{{2|-unset}}}|{{{2|unset-}}}|{{!}}{{#or:{{#dplvar:_cate_glossary-{{ucfirst:{{{2|}}}}}}}|{{tr|{{{2|}}}|lang={{{lang|{{lang|}}}}}}}}}}}<!-- category sortkey, only if set (can be blank)
--> ]]<!--
-->}}<!--
--></includeonly><!--
--><noinclude>{{i18n-ready}}{{doc}}
{{category|Templates}}
{{language info|en=Template:Category}}
</noinclude>
353882f9f8269d2efb786ee796f9bcf2f5604359
Template:Common
10
58
363
2023-11-03T07:53:35Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Common]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly><!--
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
DISPLAYTITLE
Display the translated page title for translation project
pages and/or display the italicized page title.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// #var:__global__trp_displaytitle is set in {{translation projects}}
// #var:__global__is_italic_title is set in {{italic title}}
-->{{#vardefine:_displaytitle|<!--
-->{{#if:{{#var:__global__trp_displaytitle}}|<!--
// display the translated page title
-->{{#if:{{#var:__global__is_italic_title}}|<!--
--><i>{{#var:__global__trp_displaytitle}}</i><!--
-->|<!--
-->{{#var:__global__trp_displaytitle}}<!--
-->}}<!--
-->{{#var:__global__trp_displaytitle_suffix}}<!--
-->|<!--
// display the regular title
-->{{#if:{{#var:__global__is_italic_title}}|<!--
-->{{#ifeq:{{NAMESPACENUMBER}}|0||{{NAMESPACE}}:}}<i>{{PAGENAME}}</i><!-- don't italicize the namespace
-->}}<!--
-->}}<!--
-->}}<!--
-->{{#if:{{#var:_displaytitle}}|{{DISPLAYTITLE:{{#var:_displaytitle}}|noreplace}}}}<!--
--></includeonly><!--
--><noinclude>
This template is used for common processes on every page. It is called in {{tl|language info}}.
{{category|Templates}}
</noinclude>
f78bf5339dd5b66ba156a2c44176f20e431f3609
Template:Error
10
69
385
2023-11-03T07:54:46Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Error]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly><!--
// localization info is autoloaded from Template:Error/l10n
--><span class="error" data-source="{{{from|{{{source|}}}}}}" title="{{{title|}}}">{{l10n|error|intro}}{{{1|{{{text|}}}}}}</span><!--
-->{{#if:{{bool|{{{cate|y}}}}}|<!--
// general, common error cate
-->[[Category:{{l10n|error|cate}}]]<!--
// specific error cate based on the source of the error
-->{{#if:{{{from|{{{source|}}}}}}|[[Category:{{l10n|error|cate_from|$from$={{{from|{{{source|}}}}}}}}]]}}<!--
// other, custom error cates
-->{{#fornumargs:k|v|<!-- iterate over all unnamed parameters
-->{{#ifeq:{{#var:k}}|1||<!-- skip $1
-->{{#if:{{#var:v}}|[[Category:{{#var:v}}]]}}<!--
-->}}<!--
-->}}<!--
-->{{#forargs:cate|k|v|<!-- iterate over all parameters of the format "cate<number>", including $cate
-->{{#if:{{isNumber|onlypositive=y|0{{#var:k}}}}|<!--
-->{{#if:{{#var:v}}|[[Category:{{#var:v}}]]}}<!--
-->}}<!--
-->}}<!--
-->}}<!--
--></includeonly><!--
--><noinclude>{{i18n-ready}}{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:Error}}
</noinclude>
39e03d8560d763dfd6699fb0f091ed8614c57034
Template:Ifexists
10
70
389
2023-11-03T07:56:12Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Ifexists]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>{{#if: {{#dpl:skipthispage = false | redirects = {{{redirects|include}}} | noresultsheader = 1 | title = {{{1|}}}}} | {{{3|}}} | {{{2|}}} }}</includeonly><noinclude>{{doc}}
{{language info|en=Template:Ifexists}}
</noinclude>
0e3c5bc19f1f8c0e766286883ad2bd1a2a87fe4a
Template:IsNumber
10
76
403
2023-11-03T07:56:54Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:IsNumber]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>{{#rmatch:{{{1|}}}|{{#if:{{bool|{{{onlypositive|}}}}}|^\d+$|^-?\d+$}}|y}}</includeonly><noinclude>{{doc}}
{{language info|en=Template:IsNumber}}
</noinclude>
58acf6a9e41a46416c766f4d714f90a52953cf69
Template:L10n
10
63
373
2023-11-03T07:58:20Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:L10n]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
#REDIRECT [[template:Localization]]
a22276c07ff24cff65d115a753ea16d8c92d06b5
Template:Flexstart
10
80
411
2023-11-03T08:36:04Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Flexstart]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly><div style="<!--
======= type: flexbox and/or flexitem =======
//parameter: {{{1}}}, 'item' for flexitem only (not a flexbox); 'inline' or 'inlinebox' for inline-flexbox; other values for flexbox
-->{{#switch:{{{1|}}}<!--
-->|inlinebox|inline=display:inline-flex;<!--
-->|item=<!-- need nothing
-->|#default=display:flex;<!--
-->}}<!--
======= parameters for flexbox =======
-->{{#ifeq:{{{1}}}|item||<!-- only if $type != item
//parameter: wrap, default value is 'wrap'
-->{{#switch:{{{wrap|}}}<!--
-->|no|nowrap=flex-wrap:nowrap;<!--
-->|#default=flex-wrap:wrap;<!--
-->}}<!--
//paramter: direction, no need to set up default, just left blank to use css default.
-->{{#switch:{{{direction|}}}<!--
-->|=<!-- Only if explicitly specified
-->|row-reverse=flex-direction:row-reverse;<!--
-->|column=flex-direction:column;<!--
-->|column-reverse=flex-direction:column-reverse;<!--
-->|#default=flex-direction:row;<!--
-->}}<!--
//paramter: justify, no need to set up default, just left blank to use css default.
-->{{#switch:{{{justify|}}}|<!--
-->|=<!-- Only if explicitly specified
-->|left|flex-start=justify-content:flex-start;<!--
-->|right|flex-end=justify-content:flex-end;<!--
-->|justified|space-between=justify-content:space-between;<!--
-->|space-around=justify-content:space-around;<!--
-->|#default=justify-content:{{{justify|}}};<!--
-->}}<!--
//paramter: alignitems, no need to set up default, just left blank to use css default.
-->{{#switch:{{{alignitems|}}}<!--
-->|=<!-- Only if explicitly specified
-->|top|flex-start=align-items:flex-start;<!--
-->|bottom|flex-end=align-items:flex-end;<!--
-->|middle=align-items:center;<!--
-->|#default=align-items:{{{alignitems|}}};<!--
-->}}<!--
//paramter: alignlines, no need to set up default, just left blank to use css default.
-->{{#switch:{{{alignlines|}}}<!--
-->|=<!-- Only if explicitly specified
-->|top|flex-start=align-content:flex-start;<!--
-->|bottom|flex-end=align-content:flex-end;<!--
-->|justified|space-between=align-content:space-between;<!--
-->|#default=align-content:{{{alignlines|}}};<!--
-->}}<!--
-->}}<!-- end if $type != item
======= parameters for flexitem =======
//parameter: order
-->{{#if:{{{order|}}}|<!--
-->order:{{{order|}}};<!--
-->}}<!--
//parameter: grow
-->{{#if:{{{grow|}}}|<!--
-->flex-grow:{{{grow|}}};<!--
-->}}<!--
//parameter: shrink
-->{{#if:{{{shrink|}}}|<!--
-->flex-shrink:{{{shrink|}}};<!--
-->}}<!--
//parameter: basis
-->{{#if:{{{basis|}}}|<!--
-->flex-basis:{{{basis|}}};<!--
-->}}<!--
//paramter: alignself, no need to set up default, just left blank to use css default.
-->{{#switch:{{{alignself|}}}<!--
-->|=<!-- Only if explicitly specified
-->|top|flex-start=align-self:flex-start;<!--
-->|bottom|flex-end=align-self:flex-end;<!--
-->|middle=align-self:center;<!--
-->|#default=align-self:{{{alignself|}}};<!--
-->}}<!--
======= parameters for general css property or html attribute =======
//parameter: width
-->{{#if:{{{width|}}}|width:{{{width|}}};}}<!--
//parameter: height
-->{{#if:{{{height|}}}|height:{{{height|}}};}}<!--
//paramter: css / style
-->{{#if:{{{css|{{{style|}}}}}}|{{{css|{{{style|}}}}}};}}<!--
//parameter: class arrtibute
-->"{{#if:{{{cssclass|{{{class|}}}}}}|<nowiki/> class="{{{cssclass|{{{class|}}}}}}"}}<!--
//parameter: id arrtibute
-->{{#if:{{{id|}}}|<nowiki/> id="{{{id|}}}"}}<!--
ending tag-->></includeonly><noinclude>
Internal template. See [[Template:Flexbox]] for documentation.
{{category|Flexbox templates}}
{{language info|en=Template:Flexstart}}
</noinclude>
52c1286675565f2513542dbccfbc96b4414dd28a
Template:Flexend
10
79
409
2023-11-03T08:36:14Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Flexend]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly></div></includeonly><noinclude>
Internal template. See [[Template:Flexbox]] for documentation.
{{category|Flexbox templates}}
{{language info|en=Template:Flexend}}
</noinclude>
1bf8a3e7d576436497a47201ebd681739fc7d04c
Template:Options/get
10
71
391
2023-11-03T09:03:59Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Options/get]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly><!--
$1: namespace, $2: key
$1 $2 are not trimmed for better performance.
auto init from {{<ns>/initOptions}}.
-->{{#if:{{#var:optionsInitialized:{{{1|}}}}}||{{#if:{{{1|}}}|{{#vardefine:_| {{ {{{1|}}}/initOptions }} }}}}}}<!--
get option value
-->{{#var:options:{{{1|}}}:{{#var:optionsAlias:{{{1|}}}:{{{2|}}}|<__invalid__>}}}}<!--
--></includeonly><noinclude>
example:
<pre>
{{options/get|namespace|foo}}
</pre>
See {{tl|options}} for more info.
{{language info|en=Template:Options/get}}
</noinclude>
81dceb5875606d17e78e7f1eb92baf07950f48d1
Template:Options/init
10
72
393
2023-11-03T09:04:34Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Options/init]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly><!--
set flag:
-->{{#vardefine:optionsInitialized:{{{1|}}}|y}}<!--
-->{{#vardefine:options:{{{1|}}}:<__invalid__>|{{error|Inexistent option key}}}}<!--
all $key=$default_value pairs
-->{{#vardefine:optionsKeys:{{{1|}}}|}}<!--
-->{{#forargs:key:|$key|$value|<!--
-->{{#vardefine:optionsKeys:{{{1|}}}|{{#var:optionsKeys:{{{1|}}}}}{{#var:$key}},}}<!-- append to key list
-->{{#vardefine:optionsAlias:{{{1|}}}:{{#var:$key}}|{{#var:$key}}}}<!-- register key alias (for better performance)
//default value:
-->{{#switch:{{#var:$value}}<!--
-->|(bool:true)=<!-- this option is bool type, for stored value: empty means true, nonempty means false.
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|}}<!-- default is empty
// input mapping: y/yes/on => (empty), n/no/off => n
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:y|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:yes|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:on|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:no|n}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:off|n}}<!--
-->|(bool:false)=<!-- this option is bool type, for stored value: empty means false, nonempty means true.
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|}}<!-- default is empty
// input mapping: y/yes/on => y, n/no/off => (empty)
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:yes|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:on|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:n|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:no|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:off|}}<!--
-->|(bool)=<!-- this option is bool type, for stored value: "y" means true, "n" means false, other means undefined.
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|}}<!-- default is empty
// input mapping: y/yes/on => y, n/no/off => n
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:yes|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:on|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:no|n}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:off|n}}<!--
-->|#default=<!--
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|{{#var:$value}}}}<!--
-->}}<!--
-->}}<!--
-->{{#arraydefine:optionsKeys:{{{1|}}}|{{#var:optionsKeys:{{{1|}}}}}|,|unique}}<!--
key alias:
-->{{#forargs:alias:|$key|$value|<!--
-->{{#vardefine:optionsAlias:{{{1|}}}:{{#var:$key}}|{{#var:$value}}}}<!--
-->}}<!--
value alias:
-->{{#forargs:value:|$key|$value|<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}|{{#var:$value}}}}<!-- here $key is "name:value"
-->}}<!--
//make an init snapshot.
//don't use {{options/snap}} here to avoid template loop
-->{{#arrayprint:optionsKeys:{{{1|}}}||@@@@|<!--
-->{{#vardefine:optionsSnap:{{{1|}}}:__RESET__:@@@@|{{#var:options:{{{1|}}}:{{#var:optionsAlias:{{{1|}}}:@@@@|<__invalid__>}}}}}}<!--
-->}}<!--
==== doc mode: gen doc, table rows ====
-->{{#if:{{#var:__FLAG_OPTIONS_AUTODOC__}}|<!--
key name:
-->{{#arrayprint:optionsKeys:{{{1|}}}||@@@@|<!--
-->{{#vardefine:optionsDoc:@@@@|<td><code>@@@@</code></td><td>}}<!--
-->}}<!--
key alias:
-->{{#forargs:alias:|$key|$value|<!-- $key is alias, $value is origin key name.
-->{{#vardefine:optionsDoc:{{#var:$value}}|{{#var:optionsDoc:{{#var:$value}}}}<code>{{#var:$key}}</code><br/>}}<!--
-->}}<!--
initial value:
-->{{#arrayprint:optionsKeys:{{{1|}}}||@@@@|<!--
-->{{#vardefine:optionsDoc:@@@@|{{#var:optionsDoc:@@@@}}</td><td><code>{{#var:options:{{{1|}}}:@@@@|<i><small>(empty)</small></i>}}</code></td><td>}}<!--
-->}}<!--
value alias:
-->{{#forargs:value:|$key|$value|<!--
//here $key is "name:value"
-->{{#vardefine:_key|{{#explode:{{#var:$key}}|:|0|2}}}}<!--
-->{{#vardefine:_from|{{#explode:{{#var:$key}}|:|1|2}}}}<!--
-->{{#vardefine:optionsDoc:{{#var:_key}}|{{#var:optionsDoc:{{#var:_key}}}}<code>{{#var:_from}}</code> → <code>{{#var:$value|<i><small>(empty)</small></i>}}</code><br/>}}<!--
-->}}<!--
// (bool:true) and (bool:false)
-->{{#forargs:key:|$key|$value|<!--
-->{{#switch:{{#var:$value}}<!--
-->|(bool:true)=<!-- this option is bool type, for stored value: empty means true, nonempty means false.
// input mapping: y/yes/on => (empty), n/no/off => n
-->{{#vardefine:optionsDoc:{{#var:$key}}|{{#var:optionsDoc:{{#var:$key}}}}<!--
--><code>y</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>yes</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>on</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>no</code> → <code>n</code><br/><!--
--><code>off</code> → <code>n</code><br/><!--
-->}}<!--
-->|(bool:false)=<!-- this option is bool type, for stored value: empty means false, nonempty means true.
// input mapping: y/yes/on => y, n/no/off => (empty)
-->{{#vardefine:optionsDoc:{{#var:$key}}|{{#var:optionsDoc:{{#var:$key}}}}<!--
--><code>yes</code> → <code>y</code><br/><!--
--><code>on</code> → <code>y</code><br/><!--
--><code>n</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>no</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>off</code> → <code><i><small>(empty)</small></i></code><br/><!--
-->}}<!--
-->|(bool)=<!-- this option is bool type, for stored value: "y" means true, "n" means false, other means undefined.
// input mapping: y/yes/on => y, n/no/off => n
-->{{#vardefine:optionsDoc:{{#var:$key}}|{{#var:optionsDoc:{{#var:$key}}}}<!--
--><code>yes</code> → <code>y</code><br/><!--
--><code>on</code> → <code>y</code><br/><!--
--><code>no</code> → <code>n</code><br/><!--
--><code>off</code> → <code>n</code><br/><!--
-->}}<!--
-->|#default=<!-- nothing
-->}}<!--
-->}}<!--
-->{{#vardefine:__FLAG_OPTIONS_AUTODOC__|}}<!-- reset flag
-->}}<!--
--></includeonly><noinclude>
example:
<pre>
{{options/init|item<!--
-->|key:icons=yes<!-- default value of "icons" option is "yes"
-->|key:small=no<!-- default value of "small" option is "no"
-->|value:small:n=no<!-- value "n" for "small" is same as "no", {{options/set|item|small=n}} is same as {{options/set|item|small=no}}
-->|key:style=<!-- default value of "style" is empty value.
-->|alias:css=style<!-- "css" is an alias of "style", so {{options|item|css}} is same as {{options|item|style}}
-->|key:wrap=(bool:true)<!-- bool value, default value is empty, empty value means true, nonempty value means false
-->|key:nolink=(bool:false)<!-- default value is empty, e, nonempty value means false
-->}}
</pre>
See {{tl|options}} for more info.
{{language info|en=Template:Options/init}}
</noinclude>
9a98f5969cdd42001db213a5a2d61adcf78d9c95
Template:Infocard/heading
10
83
417
2023-11-03T09:14:56Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Infocard/heading]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly><div class="heading">{{{1|}}}</div></includeonly><noinclude>
{{internal subtemplate}}
{{category|Formatting templates}}
{{language info|en=Template:Infocard/heading}}
</noinclude>
e0a88b9d802d390bb6b6bdcb8f108b5c0924f005
Template:Fullurl
10
8
401
40
2023-11-03T09:24:20Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Fullurl]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly><!--
-->{{#if:{{{1|}}}|<!--
// prepare
-->{{#vardefine:fullurl:encode|{{#if:{{{text|}}}|{{#if:{{bool|{{{noencode|}}}}}||y}}}}}}<!-- if $text is set and $noencode is not set to true, then encode the URL parameters
-->{{#vardefine:fullurl:querystring|<!--
-->{{#forargs:|k|v|{{#switch:{{#var:k}}|1|text=|noencode=|#default=<!-- iterate over all parameters, skip $1, $text, and $noencode
-->{{#if:{{#var:fullurl:encode}}|{{#vardefine:v|{{urlencode:{{#var:v}}|WIKI}}}}}}<!-- encode parameter value if necessary
-->₪{{#if:{{isNumber|{{#var:k}}}}|{{#var:v}}|{{#var:k}}={{#var:v}}}}<!-- "value" for unnamed parameters, "key=value" for named ones
-->}}}}<!--
-->}}<!--
-->{{#vardefine:fullurl:link|{{fullurl:{{{1|}}}|{{#lstsep:{{#var:fullurl:querystring}}|₪|&}}}}}}<!--
// output
--><span class="plainlinks">{{#if:{{{text|}}}|[{{#var:fullurl:link}} {{{text}}}]|{{#var:fullurl:link}}}}</span><!--
-->}}<!-- end of if
--></includeonly><!--
--><noinclude>{{doc}}
{{language info|en=Template:Fullurl}}
</noinclude>
efffeeaa5df0135a763cc6c3124b47d572df1ea6
41
40
2024-01-10T15:22:04Z
Pcj
1919
1 revision imported
wikitext
text/x-wiki
<includeonly>{{#if: {{{nolink|}}} | <nowiki>http://help.gamepedia.com/index.php?title=</nowiki>{{{1}}}{{#if: {{{2|}}} | &{{{2}}} }} |<!--
--><span class="plainlinks">{{#if: {{{text|}}} | [ }}{{fullurl: {{{1}}} | {{{2|}}} }} {{#if: {{{text|}}} | {{{text}}}]}}</span>}}</includeonly><noinclude>{{doc}}
[[Category:Formatting templates|{{PAGENAME}}]]</noinclude>
46367eacd22a6dce7076a2ab94d525b760c66e2b
Engine Blocks
0
18
89
88
2023-11-05T05:36:25Z
136.158.101.72
0
Dimensions of RAW Engine. Wrong dimension. Not 2 x 4 x 2, it's 2 x 4 x 3.
wikitext
text/x-wiki
{{Stub}}
==Bulldawg Engine==
[[File:Bulldawg Engine.png|thumb|Bulldawg Engine]]
High acceleration. Low top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 1
|-
| Weight || 9.4 kg
|-
| Power || 333
|-
| Dimensions || 2 x 2 x 1
|}
==RAW Engine==
[[File:Raw Engine.png|thumb|Raw Engine]]
Low acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 2
|-
| Weight || 59.6 kg
|-
| Power || 1700
|-
| Dimensions || 2 x 4 x 3
|}
==Dragon Engine==
[[File:Dragon Engine.png|thumb|Dragon Engine]]
High acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 3
|-
| Weight || 25 kg
|-
| Power || 3333
|-
| Dimensions || 2 x 2 x 2
|}
[[Category:Stubs]]
f447b578ab9c8efaf7042a65ae284487dc73cef6
90
89
2023-11-05T05:46:10Z
136.158.101.72
0
Wrong names, Wrong Descriptions
wikitext
text/x-wiki
==Siberian Engine==
[[File:Bulldawg Engine.png|thumb|Bulldawg Engine]]
Medium Acceleration. Medium Top Speed. Useful in small builds.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 2
|-
| Weight || 10 kg
|-
| Power || 560
|-
| Dimensions || 2 x 2 x 1
|}
==German Engine==
[[File:Raw Engine.png|thumb|Raw Engine]]
Low acceleration. Medium top speed. Useful in big builds.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 5
|-
| Weight || 45 kg
|-
| Power || 1080
|-
| Dimensions || 2 x 4 x 2
|}
==Asian Engine==
[[File:Dragon Engine.png|thumb|Dragon Engine]]
High acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 7
|-
| Weight || 15 kg
|-
| Power || 10000
|-
| Dimensions || 2 x 2 x 2
|}
[[Category:Stub]]
958e8e2b074290a7881f499c9b53670d99c624f8
91
90
2023-11-06T03:26:27Z
152.157.3.131
0
wikitext
text/x-wiki
==bulldawg Engine==
[[File:Bulldawg Engine.png|thumb|Bulldawg Engine]]
Medium Acceleration. Medium Top Speed. Useful in small builds.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 2
|-
| Weight || 10 kg
|-
| Power || 560
|-
| Dimensions || 2 x 2 x 1
|}
==RAW Engine==
[[File:Raw Engine.png|thumb|Raw Engine]]
Low acceleration. Medium top speed. Useful in big builds.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 5
|-
| Weight || 45 kg
|-
| Power || 1080
|-
| Dimensions || 2 x 4 x 2
|}
==dragon Engine==
[[File:Dragon Engine.png|thumb|Dragon Engine]]
High acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 7
|-
| Weight || 15 kg
|-
| Power || 10000
|-
| Dimensions || 2 x 2 x 2
|}
[[Category:Stub]]
7da5dc874347e0e6e2feb730ab0bc35de7d18b2b
92
91
2023-11-06T07:44:15Z
136.158.101.72
0
Added a message for the moderators (not actually me who messed it up but i just hope that they actually think it's me because the person who made this fandom made it look a biittt different from the rest
wikitext
text/x-wiki
Im the guy who trolled you guys, sorry btw but the person who edited this did not know what the engine data actually is lol
==Siberian Engine==
[[File:Bulldawg Engine.png|thumb|Bulldawg Engine]]
Medium Acceleration. Medium Top Speed. Useful in small builds.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 2
|-
| Weight || 10 kg
|-
| Power || 560
|-
| Dimensions || 2 x 2 x 1
|}
==German Engine==
[[File:Raw Engine.png|thumb|Raw Engine]]
Low acceleration. Medium top speed. Useful in big builds.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 5
|-
| Weight || 45 kg
|-
| Power || 1080
|-
| Dimensions || 2 x 4 x 2
|}
==Asian Engine==
[[File:Dragon Engine.png|thumb|Dragon Engine]]
High acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 7
|-
| Weight || 15 kg
|-
| Power || 10000
|-
| Dimensions || 2 x 2 x 2
|}
[[Category:Stub]]
fe9281f7b08881fce9f29337a130129ab40a6735
93
92
2023-11-12T02:46:03Z
CardZed
397965
Fixed griefing.
wikitext
text/x-wiki
==Bulldawg Engine==
[[File:Bulldawg Engine.png|thumb|Bulldawg Engine]]
High Acceleration. Low Top Speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 1
|-
| Weight || 9.4 kg
|-
| Power || 333
|-
| Dimensions || 2 x 2 x 1
|}
==RAW Engine==
[[File:Raw Engine.png|thumb|Raw Engine]]
Low acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 2
|-
| Weight || 59.6 kg
|-
| Power || 1700
|-
| Dimensions || 2 x 4 x 3
|}
==Dragon Engine==
[[File:Dragon Engine.png|thumb|Dragon Engine]]
High acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 3
|-
| Weight || 25 kg
|-
| Power || 3333
|-
| Dimensions || 2 x 2 x 2
|}
[[Category:Stub]]
624d0316b1ddf399b4ec35ef5b7ddb27f1e89e41
94
93
2024-01-16T15:56:01Z
Pcj
1919
11 revisions imported
wikitext
text/x-wiki
==Bulldawg Engine==
[[File:Bulldawg Engine.png|thumb|Bulldawg Engine]]
High Acceleration. Low Top Speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 1
|-
| Weight || 9.4 kg
|-
| Power || 333
|-
| Dimensions || 2 x 2 x 1
|}
==RAW Engine==
[[File:Raw Engine.png|thumb|Raw Engine]]
Low acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 2
|-
| Weight || 59.6 kg
|-
| Power || 1700
|-
| Dimensions || 2 x 4 x 3
|}
==Dragon Engine==
[[File:Dragon Engine.png|thumb|Dragon Engine]]
High acceleration. High top speed.
{| class="wikitable"
|+ Engine Data
|-
| [[Power cores|Power Cores]]|| 3
|-
| Weight || 25 kg
|-
| Power || 3333
|-
| Dimensions || 2 x 2 x 2
|}
[[Category:Stub]]
624d0316b1ddf399b4ec35ef5b7ddb27f1e89e41
Mini-Thuster
0
29
191
190
2023-11-29T13:21:32Z
177.125.107.61
0
/* Thruster */
wikitext
text/x-wiki
{{Stub}}
== Thruster ==
[[File:TM Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
A small and cheap jet engine with low thrust.
It used to be called "Mini-Thruster" but has been renamed to "Thruster" after the Wings and Weapons update
{| class="fandom-table"
|+Engine Data
|-
![[Power ]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|28.6 kg
|-
!Lift / Weight
|2.9
|-
!Power / Size
|20
|}
The Thruster (mini-thruster) can be colored in both primary and secondary colors, as visible in the image.
It is not powerfull, but with its reduced size it can be used for a variety of compact vehicles and setups.
[[Category:Stubs]]
[[Category:Thrust]]
c027e0bff152b8c303bff0ebdbb70f0590797b9f
Dragon Jet
0
17
81
80
2023-11-29T13:24:49Z
177.125.107.61
0
wikitext
text/x-wiki
{{Stub}}
== Dragon Jet ==
[[File:TM Dragon Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine that does not overheat.
The dragon jte is a very common jet in many aircraft builds, as it is a powerful jet engine, and unlike the RAW engine, it does not overheat, which gives the advantage of sustained thrust. However, with the Airborne DLC and enough space, it is easily repleaceble by the Large Jet engine.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|3
|-
!Weight
|30 kg
|-
!Power
|300
|-
!Dimensions
|2 x 3 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|106.7 kg
|-
!Lift / Weight
|3.6
|-
!Power / Size
|25
|}
[[Category:Stubs]]
[[Category:Thrust]]
48d8816582457819f52e0f569873db87dfdc136f
82
81
2024-01-16T15:56:00Z
Pcj
1919
7 revisions imported
wikitext
text/x-wiki
{{Stub}}
== Dragon Jet ==
[[File:TM Dragon Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine that does not overheat.
The dragon jte is a very common jet in many aircraft builds, as it is a powerful jet engine, and unlike the RAW engine, it does not overheat, which gives the advantage of sustained thrust. However, with the Airborne DLC and enough space, it is easily repleaceble by the Large Jet engine.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|3
|-
!Weight
|30 kg
|-
!Power
|300
|-
!Dimensions
|2 x 3 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|106.7 kg
|-
!Lift / Weight
|3.6
|-
!Power / Size
|25
|}
[[Category:Stubs]]
[[Category:Thrust]]
48d8816582457819f52e0f569873db87dfdc136f
RAW Jet
0
34
227
226
2023-11-29T13:28:35Z
177.125.107.61
0
wikitext
text/x-wiki
{{Stub}}
== RAW Jet ==
[[File:TM Raw Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine with a cooldown. After running 1.16 seconds goes into 3 second cooldown. Its cooldown is commonly know as the "Overheat" period, in which it does not give any thrust.
It is commonly used as a "boost jet" for rally cars and racing vehicles. Although very powerful, more sustainable alternatives for aircraft are Dragon Jet and Large Jet engine.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|53.1 kg
|-
!Power
|750
|-
!Dimensions
|2 x 5 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|268.4 kg
|-
!Lift / Weight
|5.05
|-
!Power / Size
|37.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
0e059379dc546625a0c17b2c4e4b03bd30b02006
Template:Infocard
10
57
361
2024-01-04T20:14:40Z
{{Infocard}}>Rye Greenwood
0
internal refactoring (tweaked variable names for colors across all infocard subtemplates, using {{infocard/mainheading}} now instead of manual code) but no changes in output, improved code readability, +comments
wikitext
text/x-wiki
<includeonly><!--
// predefined color keywords
-->{{#vardefine:infocard:color_melee|#d20000}}<!--
-->{{#vardefine:infocard:color_warrior|{{#var:infocard:color_melee}}}}<!--
-->{{#vardefine:infocard:color_ranged|#21a08d}}<!--
-->{{#vardefine:infocard:color_ranger|{{#var:infocard:color_ranged}}}}<!--
-->{{#vardefine:infocard:color_magic|#9d0d79}}<!--
-->{{#vardefine:infocard:color_mage|{{#var:infocard:color_magic}}}}<!--
-->{{#vardefine:infocard:color_summoning|#066aff}}<!--
-->{{#vardefine:infocard:color_summon|{{#var:infocard:color_summoning}}}}<!--
-->{{#vardefine:infocard:color_summoner|{{#var:infocard:color_summoning}}}}<!--
// characteristic "terraria" color
-->{{#vardefine:infocard:color_terraria|var(--theme-accent-color)}}<!-- CSS variable to support light and dark themes
// default color
-->{{#vardefine:infocard:color_default|var(--custom-accent-border-color)}}<!-- CSS variable to support light and dark themes
// translate theme and color parameters according to the predefined keywords if possible, otherwise leave them as-is
-->{{#vardefine:infocard:color|{{#var:infocard:color_{{lc:{{{theme|{{{color|}}}}}}}}|{{{theme|{{{color|}}}}}}}}}}<!--
-->{{#vardefine:infocard:color-all|{{#var:infocard:color_{{lc:{{{theme|}}}}}|{{{theme|}}}}}}}<!--
--><div class="infocard clearfix {{{class|}}}" style="{{{css|{{{style|}}}}}}" id="{{{id|}}}"><!--
// minicard to the side
-->{{#if:{{{image|{{{imagealt|}}}}}}|<!--
--><div class="card"><!--
--><div class="image clearfix" style="width:{{{size|250px}}}">{{{imagealt|[[File:{{{image|}}}|{{{size|250px}}}|link=]]}}}</div><!--
// there are 3 text parts to display in the minicard: intro, textlist, outro
// textlist is comprised of headings and texts and is defined via "card_" parameters, e.g. "|card_foo=Heading|foo=Text"
-->{{#vardefine:infocard:textlist|}}<!--
// concatenate all "card_x" and "x" parameters into one big textlist
-->{{#forargs:card_|key|heading|<!-- e.g. with "|card_foo=Heading|foo=Text", #var:key is "foo" and #var:heading is "Heading"
-->{{#vardefine:infocard:textlist|{{#var:infocard:textlist}}<!-- concat
--><dt>{{#var:heading}}</dt><!--
--><dd>{{{ {{#var:key}}|}}}</dd><!-- e.g. "Text" with "|card_foo=Heading|foo=Text"
-->}}<!--
-->}}<!--
// open the text content <div> of the minicard
-->{{#vardefine:infocard:minicard_closingtag|}}<!--
-->{{#if:{{{cardintro|{{{cardoutro|{{#var:infocard:textlist}}}}}}}}|<!--
--><div class="content clearfix" style="width:{{{size|250px}}}">{{#vardefine:infocard:minicard_closingtag|</div>}}<!--
-->}}<!--
// display part 1: intro text
-->{{#vardefine:infocard:closingtag|}}<!--
-->{{#if:{{{cardintro|}}}|<!--
--><div class="intro">
<nowiki/><!--
-->{{#vardefine:infocard:closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{cardintro|}}}<!-- we reduce the post-expand include size by not putting this in the #if: clause above
-->{{#var:infocard:closingtag}}<!--
// display part 2: textlist
-->{{#vardefine:infocard:closingtag|}}<!--
-->{{#if:{{#var:infocard:textlist}}|<!--
--><dl>{{#vardefine:infocard:closingtag|</dl>}}<!--
-->}}<!--
-->{{#var:infocard:textlist}}<!--
-->{{#var:infocard:closingtag}}<!--
// display part 3: outro
-->{{#vardefine:infocard:closingtag|}}<!--
-->{{#if:{{{cardoutro|}}}|<!--
--><div class="outro">
<nowiki/><!--
-->{{#vardefine:infocard:closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{cardoutro|}}}<!--
-->{{#var:infocard:closingtag}}<!--
// close the text content <div> of the minicard
-->{{#var:infocard:minicard_closingtag}}<!--
--></div><!--
-->}}<!--
// main heading of the infocard
-->{{#if:{{{name|}}}|<!--
-->{{infocard/mainheading<!--
-->|name={{{name|}}}<!--
-->|subname={{{subname|}}}<!--
-->|namenote={{{namenote|}}}<!--
-->|type={{{type|}}}<!--
-->|padding={{{size|}}}<!--
-->|icon={{#if:{{{image|{{{imagealt|}}}}}}||{{{icon|}}}}}<!--
-->|iconalt={{#if:{{{image|{{{imagealt|}}}}}}||{{{iconalt|}}}}}<!--
-->}}<!--
-->}}<!--
// intro text
-->{{#vardefine:infocard:intro_closingtag}}<!--
-->{{#if:{{{intro|}}}|<!--
--><div class="intro" style="{{{intro_css|{{{intro_style|}}}}}}">
<nowiki/><!--
-->{{#vardefine:infocard:intro_closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{intro|}}}<!-- we reduce the post-expand include size by not putting this in the #if: clause above
-->{{#var:infocard:intro_closingtag}}<!--
// boxes
// these are defined via "title_" parameters, e.g. "|title_foo=Box heading|foo=Box text"
-->{{#forargs:title_|key|heading|<!-- e.g. with "|title_foo=Box heading|foo=Box text", #var:key is "foo" and #var:heading is "Box heading"
-->{{infocard/box|title={{#var:heading}}|{{{ {{#var:key}}|}}}}}<!--
-->}}<!--
// outro text
-->{{#vardefine:infocard:outro_closingtag}}<!--
-->{{#if:{{{outro|{{{text|}}}}}}|<!--
--><div class="outro" style="{{{outro_css|{{{outro_style|}}}}}}">
<nowiki/><!--
-->{{#vardefine:infocard:outro_closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{outro|{{{text|}}}}}}<!--
-->{{#var:infocard:outro_closingtag}}<!--
--></div><!--
--></includeonly><noinclude>
{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:Infocard}}
</noinclude>
c8de6606fd1e985fc5f630b8dfc9a56ebb4e30cf
Template:Infocard/box
10
81
413
2024-01-04T20:14:41Z
{{Infocard}}>Rye Greenwood
0
internal refactoring (tweaked variable names for colors across all infocard subtemplates), improved code readability
wikitext
text/x-wiki
<includeonly><!--
--><div class="box {{{class|{{options/get|infocard|box-class}}}}}" style="{{{css|{{{style|{{options/get|infocard|box-css}}}}}}}}"><!--
-->{{{titlealt|{{#if:{{{title|}}}|<!--
--><div class="title" style="border-left-color:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color-all}}}}}}};"><!--
--><span>{{{title|}}}</span><!--
--></div><!--
-->}}}}}<!--
--><div class="content">
{{{1|}}}
</div><!--
--></div><!--
--></includeonly><noinclude>
{{internal subtemplate}}
{{category|Formatting templates}}
{{language info|en=Template:Infocard/box}}
</noinclude>
26edf2e29edb5e7afe26d930d1c3f74dacb3a746
Template:Infocard/mainheading
10
84
419
2024-01-04T20:57:13Z
{{Infocard}}>Rye Greenwood
0
Protected "[[Template:Infocard/mainheading]]": Highly transcluded page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly><!--
--><div class="main-heading" style="background:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color}}}}}}};border-right-color:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color}}}}}}};padding-right:{{{padding|0}}};{{{style|{{{css|}}}}}}"><!--
// display text
--><div class="hgroup"><!--
-->{{#if:{{{type|}}}|<div>{{{type}}}</div>}}<!--
--><div class="main"><!--
-->{{{1|{{{name|}}}}}}<!--
-->{{#if:{{{namenote|}}}|<span class="namenote"> {{{namenote}}}</span>}}<!--
--></div><!--
-->{{#if:{{{subname|}}}|<div>{{{subname}}}</div>}}<!--
--></div><!--
// display icon
// $icon and $iconalt might be set to blank values, e.g. when this template is called from {{infocard}} or {{infocard/start}}, hence the #or
-->{{#if:{{{icon|}}}{{{iconalt|}}}|<!--
--><div class="{{{iconclass|}}} icon clearfix" style="--iconsize: {{{iconsize|auto}}}">{{#or:{{{iconalt|}}}|[[File:{{{icon|}}}|link=]]}}</div><!--
-->}}<!--
--></div><!--
--></includeonly><!--
--><noinclude>
{{internal subtemplate}}
{{category|Formatting templates}}
{{language info|en=Template:Infocard/mainheading}}
</noinclude>
26cd9dfa770c9e863ffdb04a2f357effbcba2410
Template:Infocard/doc
10
89
429
2024-01-04T21:33:07Z
{{Infocard}}>Rye Greenwood
0
/* Standard usage */ Correction: "default" is an actual predefined color, not the real default value.
wikitext
text/x-wiki
This template is used to display content in an "info card", which may be visually more appealing than plain text in certain contexts.
It has several subtemplates:
* For documentation of {{tl|infocard/box}}, see [[#Custom boxes|Custom boxes]].
* For documentation of {{tl|infocard/mainheading}} and {{tl|infocard/heading}}, see [[#Custom headings|Custom headings]].
* For documentation of {{tl|infocard/start}}, {{tl|infocard/end}}, {{tl|infocard/box/start}}, and {{tl|infocard/box/end}}, see [[#Start and end|Start and end]].
== Standard usage ==
<div class="mw-code">{{(}} '''infocard'''<br/><!--
--><br/>| theme = ''<theme color>''<!--
--><br/>| color = ''<theme color>''<!--
--><br/>| class = ''<custom CSS classes>''<!--
--><br/>| ''style / css'' = ''<custom CSS rules>''<!--
--><br/>| id = ''<HTML ID>''<!--
--><br/><!--
--><br/>| name = ''<main heading text>''<!--
--><br/>| type = ''<smaller text above main heading>''<!--
--><br/>| namenote = ''<smaller text after main heading>''<!--
--><br/>| subname = ''<smaller text below main heading>''<!--
--><br/><!--
--><br/>| icon = ''<image name of icon next to main heading>''<!--
--><br/>| iconalt = ''<custom icon display>''<!--
--><br/>| iconsize = ''<icon size>''<!--
--><br/>| iconclass = ''<custom CSS classes for icon>''<!--
--><br/><!--
--><br/>| intro = ''<text above boxes>''<!--
--><br/>| ''intro_style / intro_css'' = ''<custom CSS rules for text>''<!--
--><br/>| ''title_<key1> / title_<key2> / ...'' = ''<box title>''<!--
--><br/>| ''<key1> / <key2> / ...'' = ''<box content>''<!--
--><br/>| ''text / outro'' = ''<text below boxes>''<!--
--><br/>| ''outro_style / outro_css'' = ''<custom CSS rules for text>''<!--
--><br/><!--
--><br/>| size = ''<minicard width>''<!--
--><br/>| image = ''<minicard image name>''<!--
--><br/>| imagealt = ''<custom minicard image display>''<!--
--><br/>| cardintro = ''<minicard text above sub-titles>''<!--
--><br/>| ''card_<key1> / card_<key2> / ...'' = ''<minicard sub-title>''<!--
--><br/>| ''<key1> / <key2> / ...'' = ''<text below respective minicard sub-title>''<!--
--><br/>| cardintro = ''<minicard text below sub-titles>''<!--
--><br/><!--
--><br/>{{)}}</div>
; theme, color
Color of the heading bars in the infocard. <code>$theme</code> affects both the card's principal heading and the headings of boxes, whereas <code>$color</code> only affects the card's principal heading. Values can be any valid CSS color (e.g. <code>#E4F0F7</code>, <code>red</code>, <code>rgba(0,0,0,0.3)</code>), or one of these predefined shortcuts (mainly intended for [[Guide:Class setups]]):
{| class="wikitable"
| {{dotlist|<code>melee</code>|<code>warrior</code>}}
| {{color box|text=y|#D20000}}
|-
| {{dotlist|<code>ranged</code>|<code>ranger</code>}}
| {{color box|text=y|#21A08D}}
|-
| {{dotlist|<code>magic</code>|<code>mage</code>}}
| {{color box|text=y|#9D0D79}}
|-
| {{dotlist|<code>summoning</code>|<code>summon</code>|<code>summoner</code>}}
| {{color box|text=y|#066AFF}}
|-
| {{dotlist|<code>terraria</code>}}
| {{color box|text=y|var(--theme-accent-color)}}
|-
| {{dotlist|<code>default</code>}}
| {{color box|text=y|var(--custom-accent-border-color)}}
|}
If omitted, the default value is {{color box|text=y|var(--theme-highlight-background)}}.
; class
CSS class(es) to add to the infocard. Values can be any custom classes and/or these special classes:
* <code>compact</code>: Reduces the size of the infocard somewhat, in particular the heading.
* <code>auto-width</code>: By default, the infocard occupies the entire width of the article, potentially overlapping floating elements like an image thumbnail. This class causes it to only take up available space, i.e. not overlap floating elements.
* <code>biome</code>: Designed for the special infocard format used on biomes' and events' pages (groups of boxes laid out in a flexbox format). See many pages in [[:Category:Environments]] for examples.
; style/css
Custom styling for the infocard.
; id
ID attribute for the infocard. Can be used for more complex styling via CSS, or for directly linking to the infocard (also see {{tl|anchor}}).
; name
Most prominent heading of the infocard.
; type
Smaller text above <code>$name</code>, to be used for grouping infocards.
; namenote
Smaller text directly after <code>$name</code>, for supplemental information.
; subname
Smaller text below <code>$name</code>, for supplemental information.
; icon
File name of the icon to be displayed to the right of the infocard's heading, without <code><nowiki>[[File:</nowiki></code> syntax (just the file name).
; iconalt
By default, the icon is displayed as <code><nowiki>[[File:$icon|link=]]</nowiki></code>. This parameter can be used to customize that, e.g. to link the icon.
; iconsize
Size of the icon in any valid CSS length (e.g. <code>20px</code>, <code>1.5em</code>), default is <code>auto</code>.
; iconclass
CSS class(es) to add to the icon.
; intro
Main content of the infocard. Will be displayed above any potential boxes.
; intro_style/intro_css
Custom styling for the <code>$intro</code> text.
; text/outro
Main content of the infocard. Will be displayed below any potential boxes.
; outro_style/outro_css
Custom styling for the <code>$text</code>/<code>$outro</code> text.
; title_<key>, <key>
Boxes to be displayed between <code>$intro</code> and <code>$text</code>/<code>$outro</code>. Assign each box an identifier (a "key"), then use the parameter <code>$title_<key></code> for the heading of the box and the parameter <code>$<key></code> for the content of the box. For instance, use <code>| title_box1 = First box | box1 = Lorem ipsum</code> to display a box with the heading "First box" and the content "Lorem ipsum". <code>box1</code> is the identifier ("key") in this example.
; image
Enables a "mini card" to the side of the infocard which consists of an image (as defined by this parameter, without <code><nowiki>[[File:</nowiki></code> syntax) and potentially additional text below it. If the minicard is enabled, the <code>$icon</code> will not be displayed, because they both occupy the same spot.
; imagealt
By default, the image is displayed as <code><nowiki>[[File:$image|$size|link=]]</nowiki></code>. This parameter can be used to customize that, e.g. to link the image.
; size
Width of the image/minicard (without border):
* If <code>$image</code> is used, the image will be as wide as the minicard. The value for <code>$size</code> must be in pixels (because it must conform to the <code><nowiki>[[File:</nowiki></code> syntax).
* If <code>$imagealt</code> is used, <code>$size</code> will only affect the width of the minicard, as the image width is custom. The value for <code>$size</code> can be any valid CSS length (e.g. <code>200px</code>, <code>5em</code>).
The default value is <code>250px</code>.
; cardintro
Main content of the minicard. Will be displayed above any potential sub-headings.
; cardoutro
Main content of the minicard. Will be displayed below any potential sub-headings.
; card_<key>, <key>
Sub-headings to be displayed between <code>$cardintro</code> and <code>$cardoutro</code>. Assign each sub-heading an identifier (a "key"), then use the parameter <code>$card_<key></code> for the heading and the parameter <code>$<key></code> for the text below the heading. For instance, use <code>| card_part1 = First sub-heading | part1 = Lorem ipsum</code> to display a sub-heading "First sub-heading" and text "Lorem ipsum" below it. <code>part1</code> is the identifier ("key") in this example.
=== Visualization ===
This is a visualization of what part is affected by each parameter:
{{infocard
|type=<code><nowiki>{{{type}}}</nowiki></code>
|name=<code><nowiki>{{{name}}}</nowiki></code>
|namenote=<code><nowiki>{{{namenote}}}</nowiki></code>
|subname=<code><nowiki>{{{subname}}}</nowiki></code>
|imagealt=<div style="padding: 70px 0.5em;text-align: center; background: var(--theme-background-accent)"><code><nowiki>{{{image}}}</nowiki></code> or <code><nowiki>{{{imagealt}}}</nowiki></code><br/><br/>With <code><nowiki>{{{icon}}}</nowiki></code> or <code><nowiki>{{{iconalt}}}</nowiki></code>, this will be a simple icon instead of a full minicard.</div>
|size=300px
|cardintro=<code><nowiki>{{{cardintro}}}</nowiki></code>
|card_index1=<code><nowiki>{{{card_<key1>}}}</nowiki></code>
|index1=<code><nowiki>{{{<key1>}}}</nowiki></code>
|card_index2=<code><nowiki>{{{card_<key2>}}}</nowiki></code>
|index2=<code><nowiki>{{{<key2>}}}</nowiki></code>
|card_index3=...
|index3=...
|cardoutro=<code><nowiki>{{{cardoutro}}}</nowiki></code>
|intro=<code><nowiki>{{{intro}}}</nowiki></code>
|title_keyA=<code><nowiki>{{{title_<keyA>}}}</nowiki></code>
|keyA=<code><nowiki>{{{<keyA>}}}</nowiki></code>
|title_keyB=<code><nowiki>{{{title_<keyB>}}}</nowiki></code>
|keyB=<code><nowiki>{{{<keyB>}}}</nowiki></code>
|title_keyC=<code><nowiki>{{{title_<keyC>}}}</nowiki></code>
|keyC=<code><nowiki>{{{<keyC>}}}</nowiki></code>
|title_keyD=<code><nowiki>...</nowiki></code>
|keyD=<code><nowiki>...</nowiki></code>
|outro=<code><nowiki>{{{outro}}}</nowiki></code> or <code><nowiki>{{{text}}}</nowiki></code>
}}
=== Examples ===
==== Simple ====
<pre>{{ infocard
| name = Terraria
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| type = Game
| name = Terraria
| namenote = for {{desktop}}
| subname = Windows, macOS, Linux
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| type = Game
| name = Terraria
| namenote = for {{desktop}}
| subname = Windows, macOS, Linux
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| type = Game
| name = Terraria
| color = #168436
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| type = Game
| name = Terraria
| color = #168436
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
==== Icon ====
<pre>{{ infocard
| name = Terraria
| icon = Guide.png
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| icon = Guide.png
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Terraria
| iconalt = [[File:Tree.png|link=|x50px]]
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| iconalt = [[File:Tree.png|link=|x50px]]
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Terraria
| iconalt =
<div style="background:var(--theme-background);border-radius:100px">{{flexbox
|css=width:65px;
height:65px;
background: var(--theme-highlight-background);
border: 1px solid var(--theme-border-color);
border-radius:100px;
|alignitems=center
|justify=center
|[[File:Map Icon Guide.png|link=|35px]]
}}</div>
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| iconalt =
<div style="background:var(--theme-background);border-radius:100px">{{flexbox
|css=width:65px;
height:65px;
background: var(--theme-highlight-background);
border: 1px solid var(--theme-border-color);
border-radius:100px;
|alignitems=center
|justify=center
|[[File:Map Icon Guide.png|link=|35px]]
}}</div>
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
==== Boxes ====
<pre>{{ infocard
| name = Biomes
| intro = There are two important biomes: the [[Forest]] and the [[Desert]].
| title_forest = Forest biome
| forest =
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
| title_desert = Desert biome
| desert =
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
| outro = There are also other biomes.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Biomes
| intro = There are two important biomes: the [[Forest]] and the [[Desert]].
| title_forest = Forest biome
| forest =
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
| title_desert = Desert biome
| desert =
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
| outro = There are also other biomes.
}}
==== Minicard ====
<pre>{{ infocard
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 200px
| cardintro = A player in the Snow biome.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 200px
| cardintro = A player in the Snow biome.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 300px
| cardintro = Biome features:
| card_enemies = Enemies
| enemies = <nowiki/>
* Ice Slime
* Frozen Zombie
| card_drops = Enemy drops
| drops = Many useful items
| cardoutro = Also has its own [[music]] track.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 300px
| cardintro = Biome features:
| card_enemies = Enemies
| enemies = <nowiki/>
* Ice Slime
* Frozen Zombie
| card_drops = Enemy drops
| drops = Many useful items
| cardoutro = Also has its own [[music]] track.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Moon Lord
| text = The Moon Lord is the final boss of the game.
| imagealt =
<div style="
padding: 20px 20px 0;
background: #61BBC2;
margin-bottom: -15px;">
[[File:Moon Lord.png|160px|link=]]
</div>
| size = 200px
| card_drops = Drops
| drops = Some items
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Moon Lord
| text = The Moon Lord is the final boss of the game.
| imagealt =
<div style="
padding: 20px 20px 0;
background: #61BBC2;
margin-bottom: -15px;">
[[File:Moon Lord.png|160px|link=]]
</div>
| size = 200px
| card_drops = Drops
| drops = Some items
}}
== Custom boxes ==
The standard layout of an infocard's content is as described above: intro – boxes – outro. Because this can be limiting, it is possible to manually create boxes in the intro and outro. The subtemplate used for this is {{tl|infocard/box}}.
<code>{{(}} '''infocard/box''' | title = ''<box heading>'' | ''<box contents>'' | color = ''<theme color>'' | titlealt = ''<custom box heading format>'' | class = ''<custom CSS classes>'' | ''style/css'' = ''<custom styling>'' {{)}}</code>
; title
Heading of the box.
; First unnamed parameter
Contents of the box.
; color
Color of the heading bar; see [[#Standard usage|above]] for details.
; titlealt
Customize the format of the heading completely. See the source code of [[Template:Infocard/box]] for the default format and how this parameter overrides it.
; class
CSS class(es) to add to the box.
; style/css
Custom styling for the box.
=== Examples ===
==== Simple ====
<pre>{{ infocard
| name = Biomes
| text =
There are many important biomes. The first one is the Forest.
{{infocard/box | title = Forest biome |
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
}}
Another important one is the Desert.
{{infocard/box | title = Desert biome |
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}
There are many other important biomes.
{{infocard/box |
Worth mentioning are the [[Snow biome]] and the [[Jungle]].
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Biomes
| text =
There are many important biomes. The first one is the Forest.
{{infocard/box | title = Forest biome |
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
}}
Another important one is the Desert.
{{infocard/box | title = Desert biome |
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}
There are many other important biomes.
{{infocard/box |
Worth mentioning are the [[Snow biome]] and the [[Jungle]].
}}
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Biomes
| text =
At the bottom of the world there is a special biome.
{{infocard/box | title = The Underworld | color = #ff6d26 | class = small |
The Underworld is the deepest layer of the world. It is a large, open cavern that stretches across the bottom of the world, with a ceiling of Ash Blocks and a lower terrain of large lava pools, Ash Blocks, and Hellstone. It also contains numerous Ruined Houses, which are natural structures containing unique furniture and loot. The Wall of Flesh boss can be summoned in the Underworld; defeating it will cause the world to convert to Hardmode.
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Biomes
| text =
At the bottom of the world there is a special biome.
{{infocard/box | title = The Underworld | color = #ff6d26 | class = small |
[[The Underworld]] is the deepest layer of the world. It is a large, open cavern that stretches across the bottom of the world, with a ceiling of Ash Blocks and a lower terrain of large lava pools, Ash Blocks, and Hellstone. It also contains numerous Ruined Houses, which are natural structures containing unique furniture and loot. The Wall of Flesh boss can be summoned in the Underworld; defeating it will cause the world to convert to Hardmode.
}}
}}
==== Nested boxes ====
<pre>{{ infocard
| name = Weapons
| text =
{{infocard/box | title = Melee weapons | color = melee |
These are some melee weapons.
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Swords |[[Copper Shortsword]], [[Meowmere]] }}
{{infocard/box | style = width: 250px | title = Spears |[[Trident]], [[Mushroom Spear]] }}
{{flexend}}
}}
{{infocard/box | title = Ranged weapons | color = ranged |
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Bows |[[Hellwing Bow]], [[Phantasm]] }}
{{infocard/box | style = width: 250px | title = Guns |[[Musket]], [[Shotgun]] }}
{{infocard/box | style = width: 250px | title = Launchers |[[Rocket Launcher]], [[Grenade Launcher]] }}
{{flexend}}
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Weapons
| text =
{{infocard/box | title = Melee weapons | color = melee |
These are some melee weapons.
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Swords |[[Copper Shortsword]], [[Meowmere]] }}
{{infocard/box | style = width: 250px | title = Spears |[[Trident]], [[Mushroom Spear]] }}
{{flexend}}
}}
{{infocard/box | title = Ranged weapons | color = ranged |
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Bows |[[Hellwing Bow]], [[Phantasm]] }}
{{infocard/box | style = width: 250px | title = Guns |[[Musket]], [[Shotgun]] }}
{{infocard/box | style = width: 250px | title = Launchers |[[Rocket Launcher]], [[Grenade Launcher]] }}
{{flexend}}
}}
}}
== Custom headings ==
It is possible to replicate the standard heading at the top of the infocard elsewhere inside it. The subtemplate used for this is {{tl|infocard/mainheading}}.
<code>{{(}} '''infocard/mainheading''' | ''<main heading text>'' | type = ''<smaller text above>'' | namenote = ''<smaller text after>'' | subname = ''<smaller text below>'' | color = ''<theme color>'' | icon = ''<icon file name>'' | iconalt = ''<custom icon display>'' | iconsize = ''<icon size>'' | iconclass = ''<custom CSS classes for icon>'' {{)}}</code>
These parameters are exactly like the ones used for {{tl|nl=y|infocard}} (except that {{tl|nl=y|infocard/mainheading}} also accepts an unnamed parameter 1, as an alternative for <code>$name</code>). See [[#Standard usage|above]] for their descriptions.
An additional helper subtemplate is {{tl|infocard/heading}}, which displays a simple, less prominent heading anywhere in the infocard.
=== Examples ===
See [[#Examples|above]] for more examples of heading variations.
<pre>{{ infocard
| text =
There are many important biomes.
{{infocard/mainheading | Forest biome }}
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
{{infocard/mainheading | Desert biome }}
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| text =
There are many important biomes.
{{infocard/mainheading | Forest biome }}
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
{{infocard/mainheading | Desert biome }}
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| class = compact
| text =
{{infocard/mainheading | Melee weapons | color = melee }}
{{infocard/box |
{{infocard/heading| Swords }}
[[Copper Shortsword]], [[Meowmere]]
{{infocard/heading| Spears }}
[[Trident]], [[Mushroom Spear]]
}}
{{infocard/mainheading | Ranged weapons | color = ranged | iconalt = {{transform|mirror=y|[[File:Vortex armor.png|x35px]]}} }}
{{infocard/box |
{{infocard/heading| Bows }}
[[Hellwing Bow]], [[Phantasm]]
{{infocard/heading| Guns }}
[[Musket]], [[Shotgun]]
{{infocard/heading| Launchers }}
[[Rocket Launcher]], [[Grenade Launcher]]
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| class = compact
| text =
{{infocard/mainheading | Melee weapons | color = melee }}
{{infocard/box |
{{infocard/heading| Swords }}
[[Copper Shortsword]], [[Meowmere]]
{{infocard/heading| Spears }}
[[Trident]], [[Mushroom Spear]]
}}
{{infocard/mainheading | Ranged weapons | color = ranged | iconalt = {{transform|mirror=y|[[File:Vortex armor.png|x35px]]}} }}
{{infocard/box |
{{infocard/heading| Bows }}
[[Hellwing Bow]], [[Phantasm]]
{{infocard/heading| Guns }}
[[Musket]], [[Shotgun]]
{{infocard/heading| Launchers }}
[[Rocket Launcher]], [[Grenade Launcher]]
}}
}}
== Start and end ==
For more complex and convoluted infocards, it is not practical to pass content to the template via the <code>$text</code>/<code>$intro</code>/<code>$outro</code> parameters. These have the usual limitations of template parameters, like pipes (<code>|</code>) and equals signs (<code>=</code>) having to be escaped, the post-expand include size being increased, etc. To circumvent these limitations, use the subtemplates {{tl|infocard/start}} and {{tl|infocard/end}}. The start subtemplate has the exact same parameters as the normal {{tl|nl=y|infocard}} and the end subtemplate has no parameters. Thanks to {{(}}[[#Custom headings|infocard/mainheading]]{{)}} and {{(}}[[#Custom boxes|infocard/box]]{{)}}, it is still possible to use headings and boxes in an infocard transcluded like this.
The regular way to transclude an infobox as described above would be this:
<pre>
{{infocard
| name = Guide
| text = The first NPC encountered by the player.
}}
</pre>
With start and end templates, it would look like this:
<pre>
{{infocard/start}}
{{infobox/mainheading|Guide}}
The first NPC encountered by the player.
{{infocard/end}}
</pre>
The output is identical.
Similar subtemplates exist for {{(}}[[#Custom boxes|infocard/box]]{{)}}: {{tl|infocard/box/start}} and {{tl|infocard/box/end}}. They similarly allow a more convoluted setup of a box in an infocard.
== Options ==
{{options/autodoc|note_box-css=Default css for {{tl|infocard/box}}.}}
== Subpages ==
<div style="-webkit-column-count:3;column-count:3;">
{{#dpl:
|namespace=Template
|titlematch=Infocard/%
|notcategorymatch=% translation
|nottitlematch=%/doc%
|ordermethod=title
|columns=3
}}
</div>
<noinclude>
{{category|Template documentation}}
{{language info|en=Template:Infocard/doc}}
</noinclude>
2c2cb1b1e8f0721ec1df19bf83835b764c80fbc0
MediaWiki:Privacy
8
3
3
2024-01-10T15:20:54Z
Pcj
1919
Created page with "-"
wikitext
text/x-wiki
-
3bc15c8aae3e4124dd409035f32ea2fd6835efc9
MediaWiki:Disclaimers
8
4
4
2024-01-10T15:21:01Z
Pcj
1919
Created page with "-"
wikitext
text/x-wiki
-
3bc15c8aae3e4124dd409035f32ea2fd6835efc9
MediaWiki:Copyright
8
5
5
2024-01-10T15:21:16Z
Pcj
1919
Created page with "<div><img src=https://commons.wiki.gg/images/f/ff/CC-BY-SA.svg /> Page content is under the <a href=https://creativecommons.org/licenses/by-sa/4.0>Creative Commons Attribution-ShareAlike 4.0 License</a> unless otherwise noted.</div>"
wikitext
text/x-wiki
<div><img src=https://commons.wiki.gg/images/f/ff/CC-BY-SA.svg /> Page content is under the <a href=https://creativecommons.org/licenses/by-sa/4.0>Creative Commons Attribution-ShareAlike 4.0 License</a> unless otherwise noted.</div>
7290744eba73e7f9987d32ef26b3490f5bea3537
Blocks
0
6
37
36
2024-01-10T15:22:04Z
Pcj
1919
31 revisions imported
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles. These will make up the structure of your build, being both internal and external, aesthetics and frame. Be careful with placement, you don’t want to use too many and reach the complexity limit, or make it so there is a random 1x1 hole that cannot be fixed easily
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]], which can give power to a land-based vehicle, such as Bulldawg engine, RAW engine and Dragon engine, ranging from low power, to higher power, with certain engines being heavier than others, and having different acceleration speeds.
*[[Hover Blocks]], which are blocks like the hover pad, which allows you to float at a specified distance above the ground, and can be used upside down to become a wall-rider. (It can also be used in glitches)
*[[Thruster Blocks]], blocks such as Mini-thruster, RAW thruster, Dragon engine, and more with the 1.6 update, these allow propulsion on land and air, only being stopped by the sea, in which most propulsion blocks, other than underwater-centred blocks still work.
*[[Propeller blocks|Propeller Blocks]], which some of them are Propellors, Underwater propellers, Heli engine V1 and V2 (stackable/non-stackable), which all have their own functions.
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available. You can also limit these power cores in sandbox game modes from a range of 1-30, or not at all, same goes with complexity, being a range of 1(?)-700.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground. These can come in many shapes and sizes. Some may be only 3x3, while some may be 7x7, some are thin, some are thick, and they all have different grip on different terrains.
Go kart wheels or slim wheels (or landing gear) can be used on planes due to their small size or lightweightdness, while truck wheels or monster truck wheels can be used on grip-focussed vehicles, and may help making a multipurpose vehicle, although, aerodynamically? not the best. keep the speed to the lighter, smaller wheels
.
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle. These can be used in simple ways, such as decreasing weight when needed, moving wheels left and right, adding suspension to a vehicle, or can be used in a more complex way. They aren’t limited to just that though, they can be used to make complex mechanical arms, make well-made battlebots that may dominate every battle, or even just combining them with logic, and allowing extreme contraptions to be made that can confuse new and old members of the game.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds. These can be used as aesthetics to make the build more slick, using wedges to make builds look cleaner, or to make them more aerodynamic, or both.
There’s multiple types, like wedges (1x2 and 2x1 to 1x4 and 4x4), rounded (1x2, 2x4x2, etc), and corner (2x2x2, 2x1x2, 3x1x3, 4x1x4 and inverted corners for those). If you think you cannot fit a wedge into your build, or cannot fit a type of aerodynamic block into your build, you probably can by moving blocks around.
=== Lights ===
Lights are used to illuminate your vehicles. They can also be used to decorate parts of a vehicle to make them look more dramatic, or to give off the effect of an ominous presence, or some form of higher being if used correctly.
There are only 4 designated light blocks that aren’t accessories, and they’re headlight V1 and 2, one being a bottom attack point, the other being directly on top of the connection point, same goes with twilight V1 and 2.
=== Lift and Drag Blocks ===
Lift and Drag Blocks help lift your vehicles up, or push them down. This is how you make planes, and how you can also make things glide in the air.
There are powered and unpowered aerodynamic blocks for small, simple and normal tailfins, small tailfin are 2x2x1, making them easy to place, but may not be as great to use as the simple tailfin, which may be 4x4x5, and the normal tailfin. The normal tailfin is the only tailfin to have a 2x2 attachment point on top of it, allowing it to have extra blocks attached onto it. It is 4x4x2, which is the widest out of all 3. The powered tailfins are more aerodynamic, but require a power core each, while the unpowered aren’t as efficient in air, but are effective for saving power cores.
Wings come in 2 forms, small and large modular, one taking 2x1x4, the other taking 4x1x4, but each one being better in their own situation. The smaller isn’t as effective in air, but can be used to carry smaller planes into the sky with propulsion. Larger ones are meant for heavier and larger aircraft. Neither have a powered version. The 1.6 update brought more forms of wings, but their best experiences to figure out what they do
=== Tube Blocks ===
Tube Blocks provide a modular system of tubes to use in your vehicles. Many people normally skip over these blocks, thinking of them as worse looking frame blocks, and ignoring them. They hold a secret block a surprising amount of people don’t know about. The only 1x1x1 block to exist in Trailmakers (to my knowledge), that has all 6 connection points as well, and uses no mods at all, meaning it’s completely vanilla.
=== Balance Blocks ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant. When first looking at these, you may only use the buoyancy blocks or pontoons, but the weight blocks are life changers, or even life savers depending on the situation. A build that may flip over every turn can suddenly becomes heavyweight vehicle that can push around tanks at its will (if placed at the bottom of the vehicle)
The buoyancy blocks allow you to just float on water, and using the actual buoyancy block, you can change between being a submarine and being a boat.
=== Gadgets ===
Gadgets are various gadgets and combat equipment for your vehicles. This is where you now make a choice. Do you use the guns to make the worst possible vehicles, or do you use everything efficiently and possible make the best vehicle to exist?
There’s many guns, but many counters to it. This includes fighting with fire, and being a complete tank build with much armour. With 1.6, the airborne update brought a free targeting system, which helps with aiming, which can be turned off, or weakened, when wanted
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met. Some may require little-to-no skill or knowledge, such as the Altitude logic block, or Distance logic block, or the Angle logic block, but AND, OR, XOR and similar logic gates are complex, and can only be successfully used by those confident in the field of computer science and logic gates. Be wary what you get yourself into, Trailmakers
[[Category:Trailmakers]]
[[Category:Balance Blocks]]
[[Category:Inflatable Balloon]]
ead69a41a3cecebc32bc275cf15403008a4e7f95
Template:Ambox
10
7
39
38
2024-01-10T15:22:04Z
Pcj
1919
1 revision imported
wikitext
text/x-wiki
<onlyinclude><includeonly><table style="{{{style|}}}" class="plainlinks ambox {{#ifeq:{{{format|}}}|tiny|ambox-tiny}} {{#switch:{{{border|}}}
| red = ambox-red
| orange = ambox-orange
| yellow = ambox-yellow
| purple = ambox-purple
| blue = ambox-blue
| green = ambox-green
| gray = ambox-gray
| #default = ambox-green
}} {{{class|}}}">
<tr>
<td class="ambox-image">{{{image|[[File:{{{icon|Information.png{{!}}48px}}}|{{#ifeq:{{{format|}}}|tiny|x20px}}|alt=]]}}}</td>
<td class="ambox-text">{{{type|}}}
{{#if:{{{info|}}}|{{#ifeq:{{{format|}}}|tiny||<div class="amsmalltext">
{{{info}}}
</div>}}}}</td></tr></table></includeonly></onlyinclude><noinclude>
{{doc}}
[[Category:Notice templates]]</noinclude>
32fe627ecb6c9c20a4757a890f8874f6dceea1b2
Template:Stub
10
9
43
42
2024-01-10T15:22:04Z
Pcj
1919
1 revision imported
wikitext
text/x-wiki
<div class="nomobile">{{Ambox
| image = [[File:Icon-stub.svg|44px|Stub]]
| type = ''This article is a [[:Category:Stubs|stub]]. You can help {{SITENAME}} by {{fullurl|{{FULLPAGENAME}}|action{{=}}edit|text=expanding it}}.''
| border = orange
}}<br /></div><!--
--><div class="mobileonly" style="text-align:center">''This article is a [[:Category:Stubs|stub]]. You can help {{SITENAME}} by {{fullurl|{{FULLPAGENAME}}|action{{=}}edit|text=expanding it}}.''<br /><br /></div><includeonly>[[Category:Stubs]]</includeonly><noinclude>
{{doc}}
[[Category:Notice templates]]</noinclude>
f82226ac73001c29971eabb1d24c931b25cbd6e2
Category:Pages with broken file links
14
10
44
2024-01-10T15:22:49Z
Pcj
1919
Created page with "__HIDDENCAT__"
wikitext
text/x-wiki
__HIDDENCAT__
183b9c38bff80327776bd180634fccfd19cf616f
Aerodynamic Blocks
0
12
55
54
2024-01-16T15:55:59Z
Pcj
1919
8 revisions imported
wikitext
text/x-wiki
Aerodynamic Blocks are [[blocks]] that are very aerodynamic and good for designs because they allow air to flow past the vehicle and help achieving high speeds, as well as achieve interesting shapes.
{| class="fandom-table"
|+Aerodynamic Blocks
!Name
!Size
!Weight
!Angle/Radius
!Aerodynamics
|-
|Wedge 1x2
|1x2x1
|0.3 kg
|45°
|Fairly
|-
|Wedge 2x1x2
|2x1x2
|0.6 kg
|45°
|Fairly
|-
|Wedge 2x2x2
|2x2x2
|1.2 kg
|45°
|Fairly
|-
|Wedge 2x4x2
|2x4x2
|2.5 kg
|45°
|Fairly
|-
|Wedge 2x1
|2x1x1
|0.3 kg
|26.6°
|Moderately
|-
|Wedge 2x2
|2x2x1
|0.6 kg
|26.6°
|Moderately
|-
|Wedge 2x4
|2x4x1
|1.2 kg
|26.6°
|Moderately
|-
|Wedge 3x1
|3x1x1
|0.5 kg
|18.4°
|Very
|-
|Wedge 3x4
|3x4x1
|1.9 kg
|18.4°
|Very
|-
|Wedge 4x1
|4x1x1
|0.6 kg
|14°
|Extremely
|-
|Wedge 4x4
|4x4x1
|2.5 kg
|14°
|Extremely
|-
| colspan="5" |
|-
|Rounded 1x2
|1x2x1
|0.5 kg
|1 block
|Fairly
|-
|Rounded 2x1
|2x1x1
|0.6 kg
|1 block
|Fairly
|-
|Rounded 2x4
|2x4x1
|2.2 kg
|1 block
|Fairly
|-
|Rounded 2x1x2
|2x1x2
|0.8 kg
|2 blocks
|Fairly
|-
|Rounded 2x4x2
|2x4x2
|3.9 kg
|2 blocks
|Fairly
|-
| colspan="5" |
|-
|Rounded Corner 1x2
|1x2x1
|0.4 kg
|1 block
|Fairly
|-
|Rounded Corner 2x2x2
|2x2x2
|1.2 kg
|2 blocks
|Fairly
|-
| colspan="5" |
|-
|Rounded Inverted 1x2
|1x2x1
|0.3 kg
|1 block
|Fairly
|-
|Rounded Corner Inverted 1x2
|1x2x1
|0.2 kg
|1 block
|Fairly
|-
| colspan="5" |
|-
|Wedge Corner 2x2x2
|2x2x2
|0.4 kg
|45° & 45°
|Fairly
|-
|Wedge Corner 2x2x1
|2x2x1
|0.2 kg
|26.6° & 45°
|Moderately
|-
|Wedge Corner 3x3x1
|3x3x1
|0.5 kg
|18.4° & 45°
|Very
|-
|Wedge Corner 4x4x1
|4x4x1
|0.8 kg
|14° & 45°
|Extremely
|-
| colspan="5" |
|-
|Inverted Corner 2x2x2
|2x2x2
|2.1 kg
|45° & 45°
|Fairly
|-
|Inverted Corner 1x2x2
|1x2x2
|1 kg
|26.6° &45°
|Fairly
|-
|Inverted Corner 1x3x3
|1x3x3
|2.4 kg
|18.4° & 45°
|Fairly
|-
|Inverted Corner 1x4x4
|1x4x4
|4.2 kg
|14° & 45°
|Fairly
|}
[[File:Aerodynamic Blocks.png|thumb|1020x1020px|All of the Aerodynamic Blocks]]
29b95708a5b9c78dcb608dc0edb204be21cedff3
Biomes
0
13
61
60
2024-01-16T15:55:59Z
Pcj
1919
5 revisions imported
wikitext
text/x-wiki
{{Stub}}
'''Biomes''' are the different regions in [[Trailmakers]].
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
Trailmakers contains a variety of biomes. usually each biome has its own set of challenges water needs boats and or subs. sky needs planes or blimps. land needs tanks or cars.
[[Category:Trailmakers]]
6d0e33781ae780f74891881d55b40243031283aa
Blueprints
0
14
68
67
2024-01-16T15:55:59Z
Pcj
1919
6 revisions imported
wikitext
text/x-wiki
'''Blueprints''' are saved [[Building|built creations]] in [[Trailmakers]], and are the key way of sharing vehicles. Blueprints are manifested as .PNG files, with the vehicle data encoded into them.
== Importing ==
If someone sends you a blueprint, they can be downloaded by:
:#Save the image to a known location
:#In Trailmakers go to the Blueprints section
:#Click the import arrow (depicted as a box with an arrow entering it)
:#Find the file you saved prior and click "open"
== Exporting ==
To export your blueprint and send it to someone else to import follow these steps:
:#
:#Hover over a saved vehicle
:#Click the white box that appears above it (depicted as a box with an arrow leaving it)
:#Save to a known location
:#Send it to someone
[[Category:Building]]
a129c6a8a498ac7ebb1609c2ea480173e3b89223
Building
0
15
72
71
2024-01-16T15:55:59Z
Pcj
1919
3 revisions imported
wikitext
text/x-wiki
{{Stub}}
'''Building''' is a core aspect of [[Trailmakers]].
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
==Blueprints==
Blueprints are saved built creations in Trailmakers, and are the key way of sharing vehicles. Blueprints are manifested as .PNG files, with the vehicle data encoded into them.
For more detailed information about this, please visit its main article: [[Blueprints]]
[[Category:Trailmakers]]
dfb0777b9d58df29dab5afd9f80b01110b9349ee
Decals
0
16
74
73
2024-01-16T15:55:59Z
Pcj
1919
1 revision imported
wikitext
text/x-wiki
{{Stub}}
Decals are decorations you can add to blocks.
== Decals ==
There are several decal categories in the game trailmakers.
== How to use decals? ==
# Select a part
# After selecting a part, Select the Decals button that appears
# Select a decal and change the position for that decal
== Resources ==
42b6c1d66b7dc02505895ca753032b051093f20d
Frame Blocks
0
19
101
100
2024-01-16T15:56:01Z
Pcj
1919
6 revisions imported
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
=== 1. Blocks ===
"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides
=== 2. Grid Blocks ===
"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.
=== 3. Connectors ===
"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.
=== 4. Shield ===
"Armor for your vehicle" - Used as defense against projectiles launched from the cannons, Also useful for covering up studs on blocks for a sleeker look.
===5. Extras===
The Frame section also includes the following blocks: Small Porthole, Large Porthole, Airplane Window, and Mast (High Seas DLC).
{| class="fandom-table"
|+Frame Blocks
!Name
!Size
!Weight
|-
|Block 1x2
|1x2x2
|0.6 kg
|-
|Block 1x3
|1x3x1
|0.9 kg
|-
|Block 1x4
|1x4x1
|1.2kg
|-
|Block 2x4
|2x4x1
|2.5 kg
|-
|Block 2x2x2
|2x2x2
|2.5 kg
|-
|Block 4x8
|4x8x1
|10 kg
|-
| colspan="3" |
|-
|Grid Block 1x2
|1x2x1
|0.3 kg
|-
|Grid Block 1x4
|1x4x1
| 0.6 kg
|-
| colspan="3" |
|-
| Flat Connector 1x2
|1x2x1*
|0.1 kg
|-
|Flat Connector 1x3
|1x3x1*
|0.2 kg
|-
|Flat Connector 1x4
|1x4x1*
|0.2 kg
|-
| colspan="3" |
|-
|Shield 2x1
|2x1x1*
|0.6 kg
|-
|Shield 2x2
|2x2x1*
|1.2 kg
|-
|Shield 2x4
|2x4x1*
|2.5 kg
|-
| colspan="3" |
|-
|Small Porthole
|1x2x1
|1.2 Kg
|-
|Large Porthole
|4x4x3
|5 kg
|-
|Airplane Window
|2x2x1
|1.1 kg
|-
|Mast
|2x8x2
|5 kg
|}
[[File:All Frame Blocks Image.jpg|frameless|992x992px]]
75017a749842efaf3e1a007ef8bdfeae057f77a5
Game Modes
0
20
112
111
2024-01-16T15:56:02Z
Pcj
1919
10 revisions imported
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Campaign Mode: Stranded in Space==
After your spacecraft crashes on an unknown alien world, you must gather [[salvage]] from across the vast map in order to build a spaceship to fly home. Dive into the depths of the ocean, fly into a volcano, the world is your oyster in this open-ended survival adventure.
<br />
== Campaign Mode: Rally ==
Learn the basics of racing in Trailmakers. You will learn how to build various kinds of vehicles, and steadily take on more challenges as you progress in this campaign. Once you've completed the campaign, take on the global leaderboards against the worldwide community of Trailmakers!
<br />
== Campaign: High Seas (DLC) ==
High Seas is the first expansion for Trailmakers, in which you play on a sandbox map with expanded physics - there's wind, weather and waves to contend with, as you try to find all the collectible artifacts and treasure chests.
<br />
== Race Island ==
Compete with your friends in Time Trials, or to become the top player on our global leaderboards!
== Sandbox Maps ==
There are currently 4 sandbox maps you can play in with your friends in Trailmakers:
* '''Treasure Island'''
You can solve treasure hunts and play your own way on Treasure Island.
* '''Danger Zone'''
Live out your daredevil daydreams on the Danger Zone map, and pull off stunts on the ramps, halfpipes and other obstacles!
* '''Test Zone'''
If you're looking for a blank slate to build your creations in, this is the map for you. Challenge yourself and your friends in an environment free of obstacles.
* '''High Seas'''
Test your mettle as sailors in the first expansion to Trailmakers, or challenge your piloting skills against the winds on the High Seas.
== Multiplayer ==
Trailmakers can (at the time of writing) be played by up to four players in multiplayer in all modes but Rally.
[[Category:Trailmakers]]
[[Category:Game Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
72f6d62c8dd1f2785f3e4020ebd82e07728696d6
Gimbal Jet
0
21
127
126
2024-01-16T15:56:02Z
Pcj
1919
14 revisions imported
wikitext
text/x-wiki
{{Stub}}
== Gimbal Jet ==
[[File:TM Gimbal Jet.png|thumb|[Main color Red] [Second color White]|220x220px]]
A jet that always fires downwards. Can be problematic to use in flying machines (only in mods).
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|1
|-
!Weight
|9.4 kg
|-
!Power (Estimated)
|220
|-
!Dimensions
|2 x 2 x 1
|-
| colspan="2" |
|-
!Lifting Capacity
|78.5 kg
|-
!Lift / Weight
|8.35
|-
!Power / size
|57.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
20cbcf678f5886bf3c38bb94d3bc2dc6a5ebf506
Hover Blocks
0
22
132
131
2024-01-16T15:56:02Z
Pcj
1919
4 revisions imported
wikitext
text/x-wiki
{{Stub}}
==Hover Block==
[[File:Hover Block.png|thumb|Hover Block]]
Lift engine that generates an air cushion under your vehicle. Can float vehicle on water , when it moves very fast.
{| class="wikitable"
|+Engine Data
|-
|[[Power cores|Power Cores]]||1
|-
|Weight||14.1 kg
|-
|Dimensions||4 x 4 x 1
|}
[[Category:Stubs]]
48a462dc37a444d1bd7e688eb3a7ac4b6edeb5f5
How to play guide for Trailmakers
0
23
147
146
2024-01-16T15:56:03Z
Pcj
1919
14 revisions imported
wikitext
text/x-wiki
{{Stub}}
This page will serve as a basic '''How to play guide for [[Trailmakers]]'''. While there is very little information available at this time, we urge you to check back often, as new information is being added all the time! Feel free to edit this guide with any tips, tricks, and suggestions.
==Basic Gameplay==
You can either start by playing the Stranded in Space campaign, or the Rally campaign.
In Stranded in Space, you need to collect salvage from around the map to unlock blocks, in order to build a rocket to escape the planet on which you've crashlanded.
In Rally, you will learn to build various kinds of vehicles, and race them.
==Controls==
The Controls are simple. You can use the mainstream, or you can make the keybindings whatever you want to move your vehicle. Currently there is no way of changing the keybindings for build mode, or accessing your vehicle, but that is subject to change. To get into the vehicle you press F, and the same to hop out. To enter build mode you press B, and the same to get out.
==Tips and Tricks==
===Building tips===
====Balance====
When [[building]], the most common balancing issues (with some solutions), and some general tips are as such:
* Vehicle pitches down
*# Too much lift in the back
*# Not enough lift in the front
*# Thrust over point of lift
*# Too much weight in the front
*# Not enough weight in the back
* Vehicle pitches up
*# Too much lift in the front
*# Not enough lift in the back
*# Thrust under point of lift
*# Too much weight in the back
*# Not enough weight in the front
* General
*# Pseudo-weight (downforce, aka spoilers)
*# Experimenting with the wing types to see how much lift they give is also very important. An intuitive sense for how a wing is going to effect your build is crucial.
====Stability====
Some of the hardest issues to troubleshoot are stability, some general tips are as follows:
* Loss of traction (spinning out)
*# Spoilers to apply down force increase your traction but reduce control.
*# The standard wheels and the monster wheels are more grippy than their less traction-based counterparts.
*# Reduce turning angle, you can modify hinges to lower the maximum angle they can go to, expanding your turn radius, but giving you better control at high speeds.
*# Lowering speed
* Wobbly aircraft
*# Currently the best way to reduce wobbly aircraft is with tailfins (vertical and horizontal). This is due to how they are evaluated by the physics engine.
* General
*# Expand the wheel/hover base, larger surface area especially in land vehicles is one of the easiest ways to make a vehicle more stable and won't fall over.
*#
====Control====
Gaining control of your designs is likely more important then everything above, here's how you can master your creations:
* Turning
*# Increase the maximum angle of hinges
* General
*# Use tail fins on rotating servos to force the airflow through another path
*# Using angular momentum applied from helicopter servos can be used to turn your vehicles although finicky, it works well.
*# Off center propulsion (pull the back/front of the vehicle left/right/up/down via propellers or something / add jets to one side to push one side of the vehicle in front of the other.)
==See also==
* [[Release date]]
* [[System requirements]]
[[Category:Guides]]
1590b55951dfad61db16802ca1fadccbdea2e19c
Large Jet
0
25
155
154
2024-01-16T15:56:03Z
Pcj
1919
4 revisions imported
wikitext
text/x-wiki
== Large Jet ==
[[File:TM Large Jet.png|thumb|[Main color Red] [Second color White]|220x220px]]
A huge Jet Engine with the most power in the game.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|4
|-
!Weight
|40 kg
|-
!Power
|800
|-
!Dimensions
|4 x 8 x 5
|-
| colspan="2" |
|-
!Lifting Capacity
|285.5 kg
|-
!Lift / Weight
|7.1
|-
!Power / Size
|5
|}
[[Category:Stubs]]
[[Category:Thrust]]
20ece0f1a0033ead71e47973af0c93d47902d0f6
Locations
0
26
160
159
2024-01-16T15:56:04Z
Pcj
1919
4 revisions imported
wikitext
text/x-wiki
Locations in the [[Game Modes|Gamemode]] 'Stranded in Space' include:
*The Pillows
*Launchpad
*Landing Site
*Forest Plateau
*Deepwood
*Lake Lapis
*Rosewood
*Eye of Karoo
*Brownwood
*The Reef
*Tiny Island
*Paddle Island
*Buoy Island
*Magnet Island
*Dive Island
*Treasure Island
*Pine Island
*Pine High
*Desert Gate
*The Cravasse
*Dry High
*The Volcano
*Fire Tubs
*Howling Peaks
*The Slides
*The Murks
*Spike Wood
*Bogwood
*Dragon Lake
bfdf3241c004f1c05acf21cde23f16657a3d3688
Logic Blocks
0
27
170
169
2024-01-16T15:56:04Z
Pcj
1919
9 revisions imported
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks, except for the Angle Sensor and Compass which are 1x2x2, that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles. Every logic block weighs 0.6 kg, except the Angle Sensor and Compass, which weigh 1.2 kg.
[[File:Logic Blocks 2.png|thumb|594x594px|AND Gate, OR Gate, XOR Gate, Distance Sensor, Speed Sensor, Altitude Sensor, Angle Sensor, Compass]]
== How Logic Gates Work ==
There are 8 types of logic blocks in the game:
* AND Gate
* OR Gate
* XOR Gate
* Distance Sensor
*Speed Sensor
*Altitude Sensor
*Angle Sensor
*Compass
Logic Gates work by providing an output based on the input it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
The output of a logic gate is *not* the output you specify in the editor while building. The output of the gates is calculated by adding all the inputs together, rounding down to 1 if it is above, or up to -1 if it is below, then multiplying this value by the "output." This means both AND Gates and OR Gates can output values of zero.
==== AND Gate ====
* The AND Gate only produces its output if all of the inputs are not zero.
* Example: The AND Gate with two inputs receives a 1 and a 0. Because only one of the inputs is a 1, the AND Gate will not send its output. When it receives a 1 and a 1, it will send its output to whatever blocks that are marked to receive it.
*Example 2: An AND Gate with 3 inputs receives a 1, -0.5, and -0.5. Because adding the inputs together equals 0, the AND gate outputs nothing.
==== OR Gate ====
* The OR Gate only produces its output if any of it inputs are not zero.
* Example: An OR Gate with 3 inputs receives a 1, 1, and 0. Because one of the inputs sends a 1, the OR Gate will send its output. If all of the inputs were 0, it would not send any output.
*Example 2: An OR Gate with 3 inputs receives a 1, -0.5, and -0.5. Because adding the inputs together equals 0, the OR gate outputs nothing.
*Note that, like the other gates, the output of the OR Gate is calculated by adding all the inputs together, rounding down to 1 if it is above, or up to -1 if it is below, then multiplying this value by the "output."
==== XOR Gate ====
* The XOR Gate only produces output if exactly one input is not zero.
* Example: An XOR Gate with 3 inputs receives a 1, 1, and 0. Unlike the OR Gate, the XOR Gate will not send its output because the more than a single input is a 1. If the inputs were 0, 0, and 1, the XOR Gate would send its output.
* Note that this is not the case with real-world binary logic, as with actual binary logic, an XOR Gate will send its output if an odd number of inputs are active.
==== Distance Sensor ====
* The Distance Sensor sends output when the distance between the sensing side of the block and another block or object come within a set distance.
==== Speed Sensor ====
* The Speed Sensor sends output when the speed of the block reaches a set speed.
==== Altitude Sensor ====
* The Altitude Sensor sends output when the altitude of the block reaches a certain altitude.
==== Angle Sensor ====
* The Angle Sensor sends output when the angle of the block reaches a set amount.
==== Compass ====
* The Compass sends output when the direction the block is facing falls within a set angle.
==== Connecting Inputs and Outputs ====
Logic Blocks can be connected to any other block that can be controlled with input, including other Logic Blocks. To have a Logic Block control another block, Click the gear icon on the logic block and click the check box on the block that you would like it to control.
== Tips ==
* A single Logic Block can control multiple blocks at a time. If your vehicle has a lot of [[Mechanical Blocks]] to control at once, you can set them to be controlled by a single logic block instead to avoid needing to modify the controls and timing of each block.
eb8958e6c0350c65b5792436f885711b149e17d7
Mechanical Blocks
0
28
176
175
2024-01-16T15:56:04Z
Pcj
1919
5 revisions imported
wikitext
text/x-wiki
{{Stub}}
== Overview ==
"Blocks with mechanical functions," Mechanical Blocks are blocks that move by the Logic Blocks, seat, or another Mechanical Block.
== List of Mechanical Blocks ==
=== Hinges ===
==== Steering Hinge ====
Allows a limited angle of rotation perfect for wheels.
{| class="fandom-table"
|+Block Data
|Weight
|0.5 kg
|-
|Dimensions
|1 x 1 x 1
|}
==== Large Hinge ====
Allows a limited angle of rotation perfect for wheels.
{| class="fandom-table"
|+Block Data
|Weight
|1.1 kg
|-
|Dimensions
|2 x 1 x 1
|}
==== Trailer Hinge ====
Ball hinge with two attachment points.
{| class="fandom-table"
|+Block Data
|Weight
|5 kg
|-
|Dimensions
|2 x 2 x 1
|}
=== Suspension ===
==== Straight Suspension ====
Absorbs shock to make your vehicle drive smoother on uneven surfaces.
{| class="fandom-table"
|+Block Data
|Weight
|0.5 kg
|-
|Dimensions
|1 x 1 x 2
|}
==== Suspension Spring ====
Absorbs shock to make your vehicle drive smoother on uneven surfaces.
{| class="fandom-table"
|+Block Data
|Weight
|0.5 kg
|-
|Dimensions
|1 x 2 x 3
|}
=== Servos ===
==== Rotating Servo ====
Block that can slowly rotate in each direction.
{| class="fandom-table"
|+Block Data
|Weight
|5 kg
|-
|Dimensions
|2 x 2 x 1
|}
==== Spinning Servo ====
Block that can spin around quickly.
{| class="fandom-table"
|+Block Data
|Weight
|9.1 kg
|-
|Dimensions
|2 x 2 x 2
|}
=== Other ===
==== Piston ====
Extendable cylinder that moves back and forth.
{| class="fandom-table"
|+Block Data
|Weight
|6.4 kg
|-
|Dimensions
|1 x 1 x 4 (extended)
1 x 1 x 1 (retracted)
|}
==== Detachable Block ====
Detaches the structure it is attached to.
{| class="fandom-table"
|+Block Data
|Weight
|1.6 kg
|-
|Dimensions
|1 x 2 x 1
|}
e3fa036d6e4b963f28a913f450b890fa60486e9a
Mini-Thuster
0
29
192
191
2024-01-16T15:56:05Z
Pcj
1919
15 revisions imported
wikitext
text/x-wiki
{{Stub}}
== Thruster ==
[[File:TM Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
A small and cheap jet engine with low thrust.
It used to be called "Mini-Thruster" but has been renamed to "Thruster" after the Wings and Weapons update
{| class="fandom-table"
|+Engine Data
|-
![[Power ]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|80
|-
!Dimensions
|1 x 2 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|28.6 kg
|-
!Lift / Weight
|2.9
|-
!Power / Size
|20
|}
The Thruster (mini-thruster) can be colored in both primary and secondary colors, as visible in the image.
It is not powerfull, but with its reduced size it can be used for a variety of compact vehicles and setups.
[[Category:Stubs]]
[[Category:Thrust]]
c027e0bff152b8c303bff0ebdbb70f0590797b9f
Minigun
0
30
194
193
2024-01-16T15:56:05Z
Pcj
1919
1 revision imported
wikitext
text/x-wiki
[[File:Minigun.png|thumb]]
The Minigun is a block In Trailmakers. It requires a 2x2x6 area to be placed. The Minigun weighs 4.4 kilograms. It can be tinted with both primary & secondary colors. Its aerodynamics from the front, back, left, right, & top is equal to that of a "Fairly Aerodynamic" block (1x1 wedge). The Minigun's aerodynamics from the bottom is equal to a standard block face (red). It has no directional drag other than what comes from its orientation (it won't push air in any one direction like a wedge, it will push air in all directions equally like a cone). It is a Gadget block that costs 4 Power Cores. The Minigun has enough health to take 8-10 bullets before destruction.
Entering a creation with a minigun on it generates a 3-ringed reticle which represents the average firing line of all gun-based blocks on the creation. This reticle turns red once the auto-aim has "locked on" to a target. This reticle also displays the total ammo for all weapons. If the firing lines of multiple blocks are different enough, another reticle will generate to show the average firing line of one portion of the weapons while the second reticle will show the average of the other portion. This can potentially generate infinite reticles but is limited by the angle difference required to generate another reticle.
The Minigun fires continuously when triggered at approximately 600 rpm. The Minigun can auto-aim at any "target" (pirate AI [Airborne DLC only], enemy player creations) within an approximately 30-degree cone. The Minigun can be fired for 4 seconds before running out of ammo. Ammo is separate for each Minigun. This ammo is continuously replenished over time. From no Ammo to max Ammo, regeneration takes approximately 6 seconds.
The Minigun has one keymap: its fire button. this keymap can be set toggle, where the fire button will be activated after the initial keypress until the release of a second keypress. The Minigun has the standard Delay, Duration, & Pause seen in most blocks with logic in Trailmakers, where Delay requires a minimum activation time before the block's action, Duration sets a maximum activation time before block action is stopped, & Pause sets a time before the deactivation caused by Duration is reset, but if the time is set to 0, the block will not activate again until the key is released & pressed again. The Minigun also has a unique "Auto Aim Scale" value. This value sets the radius of the auto-aim cone relative to its 30-degree maximum (1 is the max 30 degrees, .5 is 15 degrees, etc.).
bdb9b501be606651f3d3068a855509f4f05424ea
Power cores
0
31
200
199
2024-01-16T15:56:05Z
Pcj
1919
5 revisions imported
wikitext
text/x-wiki
[[Power Cores]] will appear when you place [[Propulsion blocks]] as an indicator of the power of your vehicle. Propulsion blocks are not the only block that require Power Cores, as gadgets such as the Tractor Beam and Cannons require them as well.
In the Racing gamemode, vehicles are rated based on the amount of cores they use. Vehicles with similar amount of cores are put into their respective leagues for each race, such that different leagues have different leaderboards for each racetrack.
{| class="wikitable"
|+Power Core Leagues
!League
!Power Cores
!
!
|-
|Bionic League
|0
|
|
|-
|Gokart League
|1
| WHERE?!?!?!? I NEED LOCATIONS "LOCATIONS" not star war builds!!
|
|-
|
|2-5
|
|
|}
In the Stranded in Space Campaign gamemode, Power Cores serve as a limiting factor to the power of your vehicle. You have a limited amount of power cores to use, which can be increased by collecting certain scrap found around the map.
Each propulsion block has a power core requirement, which differs depending on the power of the block.
{| class="wikitable"
|+Engine Block Power Core Requirements
!Block
!Power Core Requirement
|-
|Bulldog Engine
|1
|-
|RAW Engine
|2
|-
|Dragon Engine
|3
|-
|Mini Thruster
|1
|-
|RAW Thruster
|2
|-
|Dragon Thruster
|3
|-
|Gimbal Jet
|1
|-
|Hover Block
|1
|-
|Helicopter Engine V1
|1
|-
|Helicopter Engine V2
|1
|}
Many of the gadgets also require power cores to function.
{| class="wikitable"
|+
!Block
!Power Core Requirement
|-
|Tractor Beam
|1
|-
|Small Cannon
|1
|-
|Large Cannon
|3
|-
|Tank Cannon
|3
|-
|Dynamite
|1
|}
1d9714361ae490f1ec712f59432db5d5dcfe323b
Propeller Blocks
0
32
212
211
2024-01-16T15:56:05Z
Pcj
1919
11 revisions imported
wikitext
text/x-wiki
{{Stub}}
== Large Propeller ==
[[File:TM Large Propeller.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|3
|-
!Weight
|25 kg
|-
!Power
|350
|-
!Dimensions
|2 x 2 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|125 kg
|-
!Lift / Weight
|5
|-
!Power / Size
|43.75
|-
!Power / Cores
|116.6
|}
Provides propulsive power. Part of Airborne DLC.
== Propeller ==
[[File:TM Propeller.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|12.5 kg
|-
!Power
|200
|-
!Dimensions
|2 x 2 x 1
|-
| colspan="2" |
|-
!Lifting Capacity
|71.5 kg
|-
!Lift / Weight
|5.72
|-
!Power / Size
|50
|-
!Power / Cores
|100
|}
Provides propulsive power.
== Helicopter Engine ==
[[File:TM Heli.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|1
|-
!Weight
|5.6 kg
|-
!Dimensions
|2 x 2 x 1
|}
Block that can spin around quickly.
== Stackable Helicopter Engine ==
[[File:TM Stack Heli.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|1
|-
!Weight
|5.6 kg
|-
!Dimensions
|2 x 2 x 1
|}
A helicopter engine with a static top and bottom. Previously called "Helicopter Engine v2".
== Outboard Boat Engine ==
[[File:TM Outboard.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|12.5 kg
|-
!Power
|~ 560
|-
!Dimensions
|2 x 2 x 4
|-
| colspan="2" |
|-
!Lifting Capacity
|~ 198.65 kg
|-
!Lift / Weight
|~ 15.9
|-
!Power / Size
|35
|-
!Power / Cores
|280
|}
Provides propulsion in water. Part of High Seas DLC.
== Underwater Propeller ==
[[File:TM Underwater.png|thumb|220x220px|[Main color Red] [Second color White]]]
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|1
|-
!Weight
|12.5 kg
|-
!Power
|~ 280
|-
!Dimensions
|2 x 4 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|~ 101.5 kg
|-
!Lift / Weight
|8.12
|-
!Power / Size
|17.5
|-
!Power / Cores
|280
|}
Provides propulsion in water.
[[Category:Stubs]]
1f35701a3907b3ed97ec2ecef8db202cb3d88207
Propulsion Blocks
0
33
217
216
2024-01-16T15:56:05Z
Pcj
1919
4 revisions imported
wikitext
text/x-wiki
Propulsion Blocks are [[blocks]] that moves your vehicle.
They can be split into the following categories:
* [[Engine Blocks]]
* [[Hover Blocks]]
* [[Thruster Blocks]]
* [[Propeller Blocks]]
abe333237b32b79a86af38df6f5d4ae84f2573d7
RAW Jet
0
34
228
227
2024-01-16T15:56:06Z
Pcj
1919
10 revisions imported
wikitext
text/x-wiki
{{Stub}}
== RAW Jet ==
[[File:TM Raw Jet.png|thumb|220x220px|[Main color Red] [Second color White]]]
A very powerful jet engine with a cooldown. After running 1.16 seconds goes into 3 second cooldown. Its cooldown is commonly know as the "Overheat" period, in which it does not give any thrust.
It is commonly used as a "boost jet" for rally cars and racing vehicles. Although very powerful, more sustainable alternatives for aircraft are Dragon Jet and Large Jet engine.
{| class="fandom-table"
|+Engine Data
![[Power cores|Power Cores]]
|2
|-
!Weight
|53.1 kg
|-
!Power
|750
|-
!Dimensions
|2 x 5 x 2
|-
| colspan="2" |
|-
!Lifting Capacity
|268.4 kg
|-
!Lift / Weight
|5.05
|-
!Power / Size
|37.5
|}
[[Category:Stubs]]
[[Category:Thrust]]
0e059379dc546625a0c17b2c4e4b03bd30b02006
Race Island
0
35
231
230
2024-01-16T15:56:06Z
Pcj
1919
2 revisions imported
wikitext
text/x-wiki
Race Island is a map in TrailMakers
46ff4cae8ffdfb4004e3629c9580afd1f50ad5c4
Release date
0
36
235
234
2024-01-16T15:56:06Z
Pcj
1919
3 revisions imported
wikitext
text/x-wiki
{{Stub}}
This page contains the '''release date''' information for [[Trailmakers]].
==Release date==
Trailmakers was released in early access on January 30, 2018. It was later fully released on September 18, 2019.
==Release information==
The full game costs a total of $25.00USD (€22.28) and expanded on the physics engine, released the [[Campaign]] [[Game Modes|gamemode]] to the public, and added several minor improvements.
==See also==
* [[How to play guide for Trailmakers]]
* [[System requirements]]
[[Category:Guides]]
122f51bf07f75fed80a07d39cc6a9880b7029a06
Rocket Thruster
0
37
241
240
2024-01-16T15:56:06Z
Pcj
1919
5 revisions imported
wikitext
text/x-wiki
== Rocket Thruster ==
[[File:TM Rocket Thruster.png|thumb|220x220px|[Main color Red] [Second color White]]]
The smallest Engine in the game. It costs the same as the Thruster, but is weaker.
{| class="fandom-table"
|+Engine Details
![[Power cores|Power Cores]]
|1
|-
!Weight
|9.8 kg
|-
!Power
|60
|-
!Dimensions
|1 x 2 x 1
|-
| colspan="2" |
|-
!Lifting Capacity
|21.6 kg
|-
!Lift / Weight
|2.2
|-
!Power / Size
|30
|}
[[Category:Stubs]]
[[Category:Thrust]]
182bf1e509fb008099829804795c9ef12e8dfaaa
Salvage
0
38
251
250
2024-01-16T15:56:07Z
Pcj
1919
9 revisions imported
wikitext
text/x-wiki
Salvages are entities, which can be collected in the Campaign Game Mode Stranded in Space. They are collected by transporting one to any Recovery Drone, which can be found all over the world. They appear in lots of shapes and sizes.
Here is a list.
{| class="fandom-table"
|+
!Type
!Picture
|-
!Small Sphere
![[File:Trailmakers small Salvage-sphere.png|thumb]]
|-
|Medium Sphere
|
|-
|Large Sphere
|[[File:Trailmakers large Salvage-sphere.png|thumb]]
|-
|Massive Sphere
|
|-
|Small Cube
|
|-
|Large Cube
|
|}
Spoiler Alert:
They are placed as follows:
{| class="fandom-table"
|+
!Block
![[Locations|Location]]
!Altitude
|-
|
|
|
|-
|Raw Jet
|Desert Gate
|129m
|-
|Grid Block 1 x 2
|Howling Peaks
|195m
|-
|Grid Block 1 x 4
|Howling Peaks
|195m
|-
|Wedge 2 x 1
|Howling Peaks
|241m
|-
|Heavy Weight Block
|Howling Peaks
|265m
|-
|Tractor Beam
|Magnet island0
|
|-
|Large Paddle
|Paddle Island
|
|-
|Buoyancy Controller
|Buoy Island
|
|-
|Gimbal Jet
|Eye of Karoo
| -22m
|-
|Block 4 x 8
|Eye of Karoo
|74m
|-
|Block 1 x 3
|Eye of Karoo
|64m
|-
|Tube 1 x 1
|Pine Island
|66m
|-
|Tube 1 x 3
|Pine Island
|73m
|-
|Tube 1 x 8
|Pine Island
|69m
|-
|Tube Tee
|Pine Island
|68m
|-
|Tube Cross
|Pine Island
|58m
|-
|Tube Double Tee
|Pine Island
|84m
|-
|Tube Double Cross
|Pine Island
|86m
|-
|Tube Slope 1 x 1 x 2
|Pine Island
|88m
|-
|Tube Tee Cross
|Pine Island
|84m
|-
|Cockpit
|Pine Island
|77m
|}
Powercores can be found here:
{| class="fandom-table"
|+
![[Locations|Location]]
!Altitude
|-
|Rosewood
|15m
|-
|Magnet Island
|0m
|-
|
|
|}
451132eb26f01826ec9d209fdb5d71a23aa80189
Sandbox
0
39
253
252
2024-01-16T15:56:07Z
Pcj
1919
1 revision imported
wikitext
text/x-wiki
Sandbox is a gamemode in trailmakers. It can be accessed by clicking Singleplayer or Multiplayer, then selecting sandbox.
=== Building ===
In sandbox you can't die, and have acces to all building pieces. (Except Cosmetic Blocks.) Players can use as many power cores as they want.
=== Maps ===
There currently are 5 Sandbox maps: Danger zone, Treasure Island, Test Zone, Airborne and High Seas. The Danger zone map and the Treasure Island map have fire rings in them, when players fly through every fire ring (with a vehicle) they get the Man in black achievement.
[[File:Trailmakers Achievement (Man in black).png|alt=Man in black achievement. Picture of a fire ring.|thumb]]
This article isn't done, you can edit it as you want.
My second article ive made.
11bd17732dc8cd7e2aa79d932d757c82ac826cb9
System requirements
0
40
257
256
2024-01-16T15:56:07Z
Pcj
1919
3 revisions imported
wikitext
text/x-wiki
{{Stub}}
The following are the minimum and recommended '''system requirements''' for [[Trailmakers]]. While these requirements do not represent a guaranteed working configuration, meeting the minimum requirements should ensure at least a launch-able environment.
==Recommended requirements==
*'''OS:''' Windows 10 64 Bit
*'''Processor:''' i7-7700K
*'''Memory:''' 16 GB RAM
*'''Graphics:''' GTX 1080
*'''Network:''' Broadband Internet connection
*'''Storage:''' 10 GB available space
==Minimum requirements==
*'''OS:''' Windows 7 64 Bit
*'''Processor:''' i5-4440 (3.1 GHz quad-core)
*'''Memory:''' 8 GB RAM
*'''Graphics:''' GTX 660
*'''DirectX:''' Version 11
*'''Network:''' Broadband Internet connection
*'''Storage:''' 6 GB available space
==See also==
* [[How to play guide for Trailmakers]]
* [[Release date]]
[[Category:Guides]]
f9df533240205144e627105dfbd8945c9076be94
Test (achievement)
0
41
260
259
2024-01-16T15:56:07Z
Pcj
1919
2 revisions imported
wikitext
text/x-wiki
This is just a test page to showcase the usage of {{Tlx|DisambigMsg}}.
[[Category:Notice templates|DisambigMsg]]
6fea560241e0ecb6514dce689df42c15dbc6583f
Test (class)
0
42
263
262
2024-01-16T15:56:07Z
Pcj
1919
2 revisions imported
wikitext
text/x-wiki
This is just a test page to showcase the usage of {{Tlx|DisambigMsg}}.
[[Category:Notice templates|DisambigMsg]]
6fea560241e0ecb6514dce689df42c15dbc6583f
Thruster Blocks
0
43
289
288
2024-01-16T15:56:08Z
Pcj
1919
25 revisions imported
wikitext
text/x-wiki
There are 6 thruster blocks currently in Trailmakers. Those 6 blocks are:
*Rocket Thruster
*Mini Thruster
*RAW Jet
* Dragon Jet
* Large Jet
* Gimbal Jet
=== Power ===
Each engine has a power rating assigned to it, the exceptions being the Large Propeller, Propeller, Outboard Boat Engine, Underwater Propeller, Helicopter Engine, and the Stackable Helicopter Engine.
Those ratings are:
{| class="wikitable" border="1"
|-
! Engine Name
! Engine Power
|-
|Rocket Thruster
|60
|-
| Mini Thruster
| 80
|-
|Gimbal Jet
| 220
|-
| Dragon Jet
| 300
|-
| RAW Jet
| 750
|-
|Large Jet
|800
|}
User "TheWaffleDimension" has done some experiments to determine how much weight each thruster engine can lift, and by comparing the results to the known engine power ratings for the Thruster, RAW and Dragon, found 0.357 as the conversion factor of weight to engine power. User "Jeebus Quade" experimented to find the lifting weight of the propeller. User "lukkram" re-did the previous experiments and included the new blocks from 1.6 update.
{| class="wikitable" border="1"
|-
!Engine Name
! Lifting Weight (Including the engine itself)
|-
|Rocket Thruster
|70.6 kg
|-
|Mini Thruster
| 34.6 kg
|-
|Gimbal Jet
| 78.57167 kg (more precise)
|-
|Dragon Jet
| 107.15 kg
|-
|RAW Jet
| 268.4 kg
|-
|Large Jet
|285.5 kg
|}
To create neutral buoyancy using gimbals, the ratio is precisely 0.01245674740481 gimbal power per kilogram.
The function to get the value is f(x) = 0.01245674740481x + 0.01 and if the function is greater than 1 then divide it until it's less than 1 and for every divide you need to add a gimbal jet and set it to the value that the function is outputting.
Interestingly, the RAW Jet is the only pulse jet in the game, with an active duration of 2 seconds followed by a cooldown of 2 seconds meaning that the RAW Jet only has a 50% uptime, according to testing done by user "Manchweld"
Additional testing on the RAW Jet has revealed that after overheating. it has doubled heating meaning that the consistent uptime is about 33% without overheating. This still gives it more power than it's power core equivalent of two Mini Thrusters.
ddd81e8e844e24f8d782a4a986da8a66367fce25
Trailmakers
0
44
310
309
2024-01-16T15:56:09Z
Pcj
1919
20 revisions imported
wikitext
text/x-wiki
[[File:TrailmakersLogo.png|link=]]
'''Trailmakers''' is part creative vehicle-[[building]] sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation chicken.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
Trailmakers was released in early access on January 30, 2018. Trailmakers will be released on PlayStation 4 on May 21, 2020.
==Features==
===The Game===
Trailmakers is about building awesome vehicles and machines, but you don’t need an engineering degree to get started. The intuitive builder will get you going in no time. Everything you build is made from physical building blocks. Each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
===Building===
The core of Trailmakers is the builder – an intuitive, easy-to-use creative space where making your constructions is as simple as playing with LEGO. The goal is to avoid the feel of complicated 3D-software, and make it an accessible part of the game. You can build anywhere in the game!
===World===
Trailmakers is set in a big world with different environments that require you to continuously adjust and upgrade your vehicles. You don’t reach snowy mountain tops, dry savannahs, or grassy fields in the same old rust bucket.
While it is a living place with hazards, challenges, and wildlife, the world is also a place where you can just relax and explore.
<br />
===Mod Support===
Since Trailmakers is all about being creative, we want to extend the customization aspect of the game into modding territory. We hope people will experiment with Trailmakers and surprise us with brand new game modes and creations!
==Videos==
{{#ev:youtube|4-c09USdvO4|600}}
==External Links==
*[http://www.playtrailmakers.com/ Official Website]
*[http://www.flashbulbgames.com/ Developers]
*[http://twitter.com/PlayTrailmakers Official Twitter]
*[http://www.facebook.com/PlayTrailmakers/ Official Facebook]
*[http://www.linkedin.com/company/lightbulb-games Official LinkedIn]
*[http://www.discord.gg/Trailmakers Official Discord]
[[Category:Trailmakers Wiki]]
aa73088234358f4381294f040f44db2322365968
Trailmakers Wiki
0
45
315
314
2024-01-16T15:56:09Z
Pcj
1919
4 revisions imported
wikitext
text/x-wiki
<!-- TO EDIT MAIN PAGE CONTENT, see "Templates used on this page" below and edit:
* {{SITENAME}}/Top section
* {{SITENAME}}/Flex section
* {{SITENAME}}/Bottom section
This is a basic responsive front page design that adapts to the available width of the browser by
rearranging the sections themselves as well as content within each section. When narrow, the three sections
line up vertically in a single column. When wide enough, the middle (flex) section is pulled out to become a
right column.
Much of the layout and appearance is determined through styles defined in these pages:
* MediaWiki:Common.css (for the desktop view)
* MediaWiki:Mobile.css (for the mobile view)
-->
<div id="fp-2column" class="fp-container">
<div id="fp-top" class="fp-section">
{{:{{SITENAME}}/Top section}}
</div>
<div id="fp-flex" class="fp-section">
{{:{{SITENAME}}/Flex section}}
</div>
<div id="fp-bottom" class="fp-section">
{{:{{SITENAME}}/Bottom section}}
</div>
</div>
<div class="nomobile" style="text-align: right; margin-right: 10px;"><small>Main page sections: [[{{SITENAME}}/Top section|Top]] · [[{{SITENAME}}/Flex section|Flex]] · [[{{SITENAME}}/Bottom section|Bottom]]. Changes for the main page can be proposed [[Talk:{{SITENAME}}|here]]. </small></div>
<metadesc>The official community maintained wiki resource for Trailmakers!</metadesc>
__NOTITLE__
[[Category:{{SITENAME}}| ]]
63dbdad7171c7cd3e29d7b777a7bb8a15d80f127
Trailmakers Wiki/Bottom section
0
46
319
318
2024-01-16T15:56:09Z
Pcj
1919
3 revisions imported
wikitext
text/x-wiki
<div class="fpbox mobilecollapsible expanded" id="fpwiki" style="text-align: center;">
<div class="heading mobileonly mobileleft">Wiki</div>
<div class="body">
<div class="linkslabel">Help Wiki</div>
<div class="fplinks"><!--
-->{{FP link|gphelp:Contents|General Help|size=wide}}<!--
-->{{FP link|gphelp:Getting Started|Getting Started|size=wide}}<!--
-->{{FP link|gphelp:Editing pages|Editing pages|size=wide}}<!--
-->{{FP link|gphelp:Starting a new page|New pages|size=wide}}<!--
-->{{FP link|gphelp:Moving a page|Moving pages|size=wide}}<!--
-->{{FP link|gphelp:Basic images|Basic images|size=wide}}<!--
-->{{FP link|gphelp:Links|Links|size=wide}}<!--
--></div>
<div class="linkslabel">Community</div>
<div class="fplinks"><!--
-->{{FP link|Special:UserLogin/signup|Register|size=wide}}<!--
-->{{FP link|Project:Community portal|How to help|size=wide}}<!--
--></div>
----
<div class="nomobile">
<div>To write a new article, just enter the article title in the box below or in the search box at the top of the page.</div>
<inputbox>
type=create
break=no
</inputbox>
----
<div style="text-align: left;">
* '''Adding content'''
** If you are unsure of what to do or how to create a page, search for a few articles on the same topic and see what they look like. You can always view the source code in a wiki and learn from what others have done.
** An edit doesn't have to be massive; if you feel you don't want to create whole articles, then just fixing spelling errors and broken links is enough.
</div>
</div>
</div>
</div><!--END Wiki box--><noinclude>[[Category:Front page sections]]</noinclude>
48f4ba82d798cc74a1b2d81344c6dce51519949e
Trailmakers Wiki/Flex section
0
47
328
327
2024-01-16T15:56:09Z
Pcj
1919
8 revisions imported
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Guides box-->
<div class="heading">Guides</div>
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
</div><!--END Guides box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Images box-->
<div class="heading">Featured images</div>
{{Featured images}}
</div><!--END Images box-->
<div class="fpbox" id="fplinks" style="text-align: center;"><!-- BEGIN Links box-->
<div class="heading">''Trailmakers'' Links</div>
<div class="fplinks">{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div>
</div><!--END Links box-->
<noinclude>[[Category:Front page sections]]</noinclude>
d28ecd8749e251342bcf8bea7796e913780dc693
Trailmakers Wiki/Top section
0
48
335
334
2024-01-16T15:56:10Z
Pcj
1919
6 revisions imported
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Welcome box-->
<div class="welcome">Welcome to the Official [[File:TrailmakersLogo.png|150px|link=|Trailmakers]] Wiki!</div>
<div>the ''Trailmakers'' guide written and maintained by the community.</div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].
Please feel free to contribute by creating new articles or expanding existing ones.
</div><!--END Welcome box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Description box-->
<div class="heading">About Trailmakers</div>
<div style="text-align: left;">
[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
</div>
</div><!--END Description box-->
<div class="fpbox" id="fproles" style="text-align: center;"><!-- BEGIN Content box-->
<div class="heading">Quick Links</div>
<div class="fplinks"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div>
</div><!-- END Heading A box--><noinclude>[[Category:Front page sections]]</noinclude>
d9f1e78e3358e620ad0585537d2d3bd6b4d8e709
Wheels
0
50
345
344
2024-01-16T15:56:10Z
Pcj
1919
7 revisions imported
wikitext
text/x-wiki
'''Wheels''' are blocks in ''[[Trailmakers]]''. They are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be un-powered so they will roll freely, or you can link an '''Engine''' to them to power them. You can also use wheels above and underwater, but engines wont be able to spin them unless engine is above water.
Currently there are 10 different wheels in the game.
*<u>Offroad Wheel</u> - ''"Slightly better traction on rough terrain than on tarmac."'' The starter wheels in the campaign. They are a medium sized wheel with solid performance on grass/sand/etc. However, they will struggle in mud. It weighs 10kg.
*<u>Racing Wheel</u> - ''"Better grip on tarmac than rough terrain."'' A medium sized wheel that performs particularly well when on tarmac but entirely fails offroad. It weighs 10kg.
*<u>Monster Truck Wheel</u> - ''"Large and heavy wheel with good overall grip."'' The largest of all wheels and by far the heaviest. The best wheel in terms of control in mud and offroad terrain, however, it is offset by the fact it will immensely slow a vehicle down due to the weight, friction, and poor aerodynamics. It weighs 25kg.
*<u>Go-kart Wheel</u> - ''"Small wheel with better grip on tarmac than rough terrain."'' One of the lightest wheels. Almost no traction on anything other than tarmac. It weights 2 kg.
*<u>Slim Wheel</u> - ''"Relatively poor grip and speed, but very light weight."'' A medium sized and thin wheel with atrociously bad control, especially in offroad terrain. Despite its description, it is by far the fastest wheel due to its light weight, aerodynamics, and lack of friction, making it excellent for vehicles that don't need to turn much on the ground (such as drag racers or planes that require runways). It weighs 1.5kg.
*<u>Drag Racing Wheel</u> - ''"Large wheel with better grip on tarmac than rough terrain."'' An enormous wheel that's size is only surpassed by the Monster Truck Wheel. It has the best grip of all wheels on paved surfaces and thus does not easily come off the ground or lose control when turning on its intended surface. Despite its name, in terms of speed it's terrible, as it will slow a vehicle down due to the heavy weight and friction. It weighs 20kg.
*<u>Truck Wheel</u> - ''"Large wheel with good overall grip."'' A large wheel that performs well on offroad terrain. Not nearly as large or heavy as the Monster Truck Wheel and thus, will not slow a vehicle down as much. While it performs better than most wheels in the mud, it will still suffer from some lack of control. It weighs 15kg.
*<u>Spiked Wheel</u> - ''"Good grip on rough terrain."'' A medium sized wheel with spikes embedded into it. Has excellent grip in offroad terrain, keeping lighter vehicles grounded when driving offroad while only suffering a slight loss in speed compared to the offroad wheels. However, they still perform poorly in mud. An excellent replacement for the offroad wheels if you favor control over speed. It weighs 10kg.
*<u>Motorcycle Wheel</u> - ''"A rad wheel for your hog. Average grip on all surfaces."'' A medium sized thin wheel with decent control. A very fast wheel that, unlike the Slim Wheel, has some measure of control. In comparison to dedicated offroad/tarmac wheels however, it's flighty and can easily lose control when turning. It weights 7.5kg
*<u>Landing Wheels</u> - ''"A pair of landing wheels to fit under an airplane."'' Simplest wheel to put underneath a vehicle as it has mounting points on the top. Average grip on all surfaces with slightly better grip on tarmac. It weighs 7.5 kg.
*<u>Ski</u> - ''"For gliding."'' Not technically a wheel, but still placed under the category. It very easily slides across the ground. Unlike tires, it does not make use of an engine nor does it rotate, and so it requires another form of propulsion (such as a thruster) in order to make use of it. It weighs 0.2kg.
*<u>Friction Pad</u> - "A pad with very high friction." A 1x1x1 block where one side is a rubber like bump that provides a ton of friction
<br />
95f01ead4656f0bfbb988b96310c4ac43688022e
Template:=
10
51
347
346
2024-01-16T15:56:10Z
Pcj
1919
1 revision imported
wikitext
text/x-wiki
<includeonly>=</includeonly><noinclude>
{{doc}}
[[Category:Formatting templates|{{PAGENAME}}]]<noinclude>
99eb3f6a79bae72aba5c833f64355bcaab9955ea
Template:Tlx
10
52
349
348
2024-01-16T15:56:10Z
Pcj
1919
1 revision imported
wikitext
text/x-wiki
<includeonly><code><nowiki>{{</nowiki>{{#if:{{{subst|}}}|[[wikipedia:Help:Substitution|subst]]:}}[[{{{LANG|}}}{{{SISTER|}}}{{ns:Template}}:{{{1|}}}|{{{1|}}}]]<!--
-->{{#if:{{{2|}}}|
|{{{2}}}
}}<!--
-->{{#if:{{{3|}}}|
|{{{3}}}
}}<!--
-->{{#if:{{{4|}}}|
|{{{4}}}
}}<!--
-->{{#if:{{{5|}}}|
|{{{5}}}
}}<!--
-->{{#if:{{{6|}}}|
|{{{6}}}
}}<!--
-->{{#if:{{{7|}}}|
|{{{7}}}
}}<!--
-->{{#if:{{{8|}}}|
|{{{8}}}
}}<!--
-->{{#if:{{{9|}}}|
|{{{9}}}
}}<!--
-->{{#if:{{{10|}}}|
|{{{10}}}
}}<!--
-->{{#if:{{{11|}}}|
|{{{11}}}
}}<!--
-->{{#if:{{{12|}}}|
|''...''
}}<nowiki>}}</nowiki></code></includeonly><noinclude>{{doc}}[[Category:Formatting templates]]</noinclude>
512f88acf594469a9b72d004b8d82ec05ac8941c
Template:Featured images
10
53
352
351
2024-01-16T15:56:10Z
Pcj
1919
2 revisions imported
wikitext
text/x-wiki
<includeonly><center><slideboxlightshow halign="center" width="400" height="250">
File:BUILD-e1501145530202.jpg
File:DANGER-e1501145493999.jpg
File:MULTIPLAYER-e1501145470328.jpg
File:EXPLORE-e1501145369502.jpg
File:CREATIVITY-e1501145511200.jpg
</slideboxlightshow></center></includeonly><noinclude>{{doc}}[[Category:Templates]]</noinclude>
d2a941ad0eca9fc41548c58d299fa3f28e973c75
Template:FP link
10
54
355
354
2024-01-16T15:56:11Z
Pcj
1919
2 revisions imported
wikitext
text/x-wiki
<onlyinclude><includeonly><div class="fplink-outer plainlinks {{#switch:{{lc:{{{width|}}}}}|wide=fplink-wide|full=fplink-fullwidth}}">
<div class="fplink {{#switch:{{{plain|}}}|yes|true|1=fplink-plain}}">
{{#if:{{{image|}}}|<div class="fplink-inner {{#ifexist:Media:{{{image|}}}||nomobile}}">{{#ifexist:Media:{{{image|}}}
|[[File:{{{image|}}}|150x150px|link={{#if:{{{url|}}}
|{{{url|}}}
|{{{1|}}}
}}]]
|[[File:{{{image|}}}|Please upload an image]]
}}
</div>
}}{{#switch:{{#if:{{{image|}}}|{{{imageonly|}}}|}}
|yes|true|1=
|#default=<div class="fplink-inner">{{#if:{{{url|}}}
|{{#if:{{{1|}}}
|[{{{url}}} {{{1}}}]
|[{{{url}}}]
}}
|{{#if:{{{1|}}}
|{{#if:{{{2|}}}
|[[{{{1}}}|{{{2}}}]]
|[[{{{1}}}]]
}}
}}
}}
</div>
}}
</div>
</div></includeonly></onlyinclude><noinclude>
{{doc}}
[[Category:Formatting templates]]
</noinclude>
67bd26fe1a69f0d4c18c57aced87b1872d5a2194
Template:Color box
10
87
425
2024-01-18T12:34:53Z
{{Infocard}}>Rye Greenwood
0
Added $textformat to force RGB or hexadecimal format and convert the input if necessary (e.g. for easily using the RGB values often found in Terraria's source code but displaying them as hex triplets). Module:Color is used for the conversion, hence +{{lua}}.
wikitext
text/x-wiki
<span class="color-box" style="background:{{{1|}}}; border:1px solid {{{border|}}}; width:{{{size|{{{width|1.25em}}}}}}; height:{{{size|{{{height|1.25em}}}}}};"></span><!--
// display text:
-->{{#switch:{{bool|{{{text|}}}}}-{{#if:{{{textformat|}}}|y}}-{{#if:{{{1|}}}|y}}<!--
-->|y--y= <code>{{{1|}}}</code><!-- only if $text is true and $textformat is blank and $1 is not blank
-->|y-y-y= {{color box/textformat|{{{1}}}|textformat={{{textformat}}}}}<!-- only if $text is true and $textformat is not blank and $1 is not blank
-->}}<!--
--><noinclude>
{{lua|Color}}
{{doc}}
{{category|Templates}}
{{language info|en=Template:Color box}}
</noinclude>
67618133ebc851d30d8cd6a5b6f331ff6203424c
Module:Language info
828
62
371
2024-01-22T13:37:25Z
{{Infocard}}>Westgrass
0
sort.
Scribunto
text/plain
-- We only invoke this module once per page, therefore we do not need to use mw.loadData()
-- This cache is set in Module:Language_info/data
-- Note:
-- If a template that's being used by large number of page changed, it will causing all of these page's cache to be invalidated and requires regeneration.
-- This may crash wiki platform and cause visitor get 5xx error. So we use luacache to decouple data template and template which uses it.
-- By doing this, editing on data template won't cause massive pages to be regenerated.
local cache = require 'mw.ext.LuaCache'
local info = cache.get(':_language_info:data')
if not info then
require('Module:Language_info/data').purge()
info = cache.get(':_language_info:data') or {}
end
return {
interwiki_links = function(frame)
local key = frame.args['en']
local lang = frame.args['lang']
local iwlinks = {}
for k,v in pairs(info) do
if k ~= lang then
if v[key] then
iwlinks[#iwlinks+1] = '[[' .. k .. ':'.. v[key] .. ']]'
end
end
end
table.sort(iwlinks)
return table.concat(iwlinks)
end,
}
2ade4db7ef0812f4df5342733ab939f7072c2651
372
371
2024-02-07T15:13:13Z
Lukkram
396381
1 revision imported
Scribunto
text/plain
-- We only invoke this module once per page, therefore we do not need to use mw.loadData()
-- This cache is set in Module:Language_info/data
-- Note:
-- If a template that's being used by large number of page changed, it will causing all of these page's cache to be invalidated and requires regeneration.
-- This may crash wiki platform and cause visitor get 5xx error. So we use luacache to decouple data template and template which uses it.
-- By doing this, editing on data template won't cause massive pages to be regenerated.
local cache = require 'mw.ext.LuaCache'
local info = cache.get(':_language_info:data')
if not info then
require('Module:Language_info/data').purge()
info = cache.get(':_language_info:data') or {}
end
return {
interwiki_links = function(frame)
local key = frame.args['en']
local lang = frame.args['lang']
local iwlinks = {}
for k,v in pairs(info) do
if k ~= lang then
if v[key] then
iwlinks[#iwlinks+1] = '[[' .. k .. ':'.. v[key] .. ']]'
end
end
end
table.sort(iwlinks)
return table.concat(iwlinks)
end,
}
2ade4db7ef0812f4df5342733ab939f7072c2651
Environment
0
55
356
2024-01-22T18:32:20Z
Lukkram
396381
Created page with "==Trailmakers Environment== The Worlds of Trailmakers have many different Flora, Fauna and Terrains. Here you can find the listing of all the different types of terrain, plants and creatures you can find exploring the [[Maps]]. =Flora= Plantlife in Trailmakers is everywhere. Ranging from small shrubs and grasses, to giant mushroom covering the sky. {| class="wikitable" |+ Caption text |- ! Header text !! Header text !! Header text |- | Example || Example || Example |- |..."
wikitext
text/x-wiki
==Trailmakers Environment==
The Worlds of Trailmakers have many different Flora, Fauna and Terrains. Here you can find the listing of all the different types of terrain, plants and creatures you can find exploring the [[Maps]].
=Flora=
Plantlife in Trailmakers is everywhere. Ranging from small shrubs and grasses, to giant mushroom covering the sky.
{| class="wikitable"
|+ Caption text
|-
! Header text !! Header text !! Header text
|-
| Example || Example || Example
|-
| Example || Example || Example
|-
| Example || Example || Example
|}
=Fauna=
While exploring, you'll find lots of creatures, like the intelligent species known as "Chirpos", or giant Bumper Whales in the seas.
{| class="wikitable"
|+ Caption text
|-
! Header text !! Header text !! Header text
|-
| Example || Example || Example
|-
| Example || Example || Example
|-
| Example || Example || Example
|}
=Terrain=
There are Several types of Terrain In Trailmakers, sorted into their physical properties while interacting with [[Wheels]]. These are:
* Dirt
* Grass
* Mud
* Tarmac
{| class="wikitable"
|+ Caption text
|-
! Header text !! Header text !! Header text
|-
| Example || Example || Example
|-
| Example || Example || Example
|-
| Example || Example || Example
|}
99aa0628fbedb823fc7f2bdce7bbfd85164bad36
Achievements
0
56
357
2024-01-22T19:15:31Z
Lukkram
396381
Created page with "=='''Trailmakers Achievements'''== There are currently 22 Achievements in Trailmakers. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island Achievements" are Achievements you need to complete in the Race Island Map. ==Danger Zone Achievements== ===3-Pointer=== text ===El Capitan=== Text2 ==Race Island Achievements== ===Island Hopper=== Text ===Hot Air===..."
wikitext
text/x-wiki
=='''Trailmakers Achievements'''==
There are currently 22 Achievements in Trailmakers. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island Achievements" are Achievements you need to complete in the Race Island Map.
==Danger Zone Achievements==
===3-Pointer===
text
===El Capitan===
Text2
==Race Island Achievements==
===Island Hopper===
Text
===Hot Air===
Text
===Best View In Town===
Text
==Treasure Island Achievements==
==Rally Mode Achievements==
==Stranded in Space Achievements==
==Other Achievements==
f79322f28406a3833a7937abb7fa0f93bc907c4b
358
357
2024-01-25T18:50:00Z
Lukkram
396381
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map.(Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024)
<tabber>
|-|Danger Zone=
{| class="wikitable" style=" width: 85%; margin: center;"
! colspan="2" | '''3-Pointer extra texto pa ver que putz'''
|-
| style="width: 70%;" | Shoot Hoops on Danger Zone uuuuuuuuuuuu
| style="width: 30%;" | 6.1% uuuuuuuuuuuuuuu
|}
|-|Race Island=
Content is entered here.
|-|Treasure Island=
Content is entered here.
|-|Rally Mode=
Content is entered here.
|-|Stranded in Space=
Content is entered here.
|-|Others=
Content is entered here.
</tabber>
==<big>Danger Zone Achievements</big>==
===3-Pointer===
<small>Shoot Hoops on Danger Zone | (6.1%)</small>
===El Capitan===
Reach the Top of Danger Zone | (8.3%)
==<big>Race Island Achievements</big>==
===Best View In Town===
Land on the Lighthouse on Race Island | (3.5%)
===Hot Air===
Crash into the blimp on Race Island | (7.5%)
===Island Hopper===
Land in all the floating Islands above Race Island in one session | (1.4%)
==<big>Treasure Island Achievements</big>==
===Man In Black===
Text
===Moby Dick===
Text
===Monster!===
Text
===Pay your respect===
Text
===Problem Solver===
Text
===Treehugger===
Text
==<big>Rally Mode Achievements</big>==
===Gold Rush===
Text
===Slide to Win===
Text
===To Fly or Not To Fly===
Text
==<big>Stranded in Space Achievements</big>==
===Bring Marshmallows!===
Text
===Power Core Collector===
Text
===Ready For Takeoff===
Text
===So attractive!===
Text
==<big>Other Achievements</big>==
===Car Collector===
Text
===Leonardo da Vinci===
Text
===Sharing is Caring===
Text
===Sonic Boom===
Text
d64f53ada283f3245fb8b588ffdc808a76eab0e8
359
358
2024-01-25T20:46:55Z
Lukkram
396381
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map. ( Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024 )
<tabber>
|-|Danger Zone=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| 3-Pointer
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Shoot Hoops on Danger Zone
| style="width: 50%; text-align:center;"| 6.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| El Capitan
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Reach the Top of Danger Zone
| style="width: 50%; text-align:center;"| 8.3%
|}
<!-- ==================================================================================================================================== -->
|-|Race Island=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Best View In Town
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Land on the Lighthouse on Race Island
| style="width: 50%; text-align:center;"| 3.5%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Hot Air
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Crash into the blimp on Race Island
| style="width: 50%; text-align:center;"| 7.5%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Island Hopper
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Land in all the floating Islands <br>
above Race Island in one session
| style="width: 50%; text-align:center;"| 1.4%
|}
<!-- ==================================================================================================================================== -->
|-|Treasure Island=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Man In Black
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Fly through all the rings of <br>
fire in Treasure Island in one session
| style="width: 50%; text-align:center;"| 4.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Moby Dick
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Bumb into the whales in Treasure Island
| style="width: 50%; text-align:center;"| 3.4%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Monster!
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Drive over 8 chickens on <br>
Treasure Island in one session
| style="width: 50%; text-align:center;"| 10.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Pay your respect
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"|Visit the monument on Treasure Island
| style="width: 50%; text-align:center;"| 9.5%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px| Problem Solver
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Complete all the ball <br>
puzzles on Treasure Island
| style="width: 50%; text-align:center;"| 2.0%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Treehugger
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"|Hug the Tree on the Northeastern <br>
Island in Treasure Island
| style="width: 50%; text-align:center;"| 1.6%
|}
<!-- ==================================================================================================================================== -->
|-|Rally Mode=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Gold Rush
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Get gold on Downhill Rush
| style="width: 50%; text-align:center;"| 6.2%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Slide to Win
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"|Get gold on Sunny Slide
| style="width: 50%; text-align:center;"| 2.4%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| To Fly or Not To Fly
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Get gold on Cliff Land
| style="width: 50%; text-align:center;"| 2.4%
|}
<!-- ==================================================================================================================================== -->
|-|Stranded in Space=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Bring Marshmallows!
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Enter the volcano
| style="width: 50%; text-align:center;"| 15.4%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Power Core Collector
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Find 15 Power Cores in Stranded in Space
| style="width: 50%; text-align:center;"| 20.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Ready For Takeoff
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Rebuild your spaceship
| style="width: 50%; text-align:center;"| 9.2%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| So attractive!
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Pick up a piece of Salvage <br>
with the Tractor Beam
| style="width: 50%; text-align:center;"| 35.8%
|}
<!-- ==================================================================================================================================== -->
|-|Others=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Car Collector
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Download and load in a <br>
vehicle from the Workshop
| style="width: 50%; text-align:center;"| 51.9%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Leonardo da Vinci
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Stay airborne in a zero <br>
Power Core vehicle for 60 seconds
| style="width: 50%; text-align:center;"| 5.6%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Sharing is Caring
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Upload a vehicle to the Workshop
| style="width: 50%; text-align:center;"| 10.0%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Sonic Boom
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Break the sound barrier
| style="width: 50%; text-align:center;"| 29.2%
|}
</tabber>
d82c769451cfd937c9fdd7e39fa2f92802f9789e
Main Page
0
1
360
1
2024-01-25T20:54:19Z
Lukkram
396381
wikitext
text/x-wiki
__NOTITLE__
<strong>MediaWiki has been installed.</strong>
Consult the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents User's Guide] for information on using the wiki software.
== Getting started ==
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Configuration settings list]
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ]
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Localise MediaWiki for your language]
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Learn how to combat spam on your wiki]
4bd13e8e155c3d1b8c56bc144aec4bdb4fe68baa
Template:Infocard
10
57
362
361
2024-02-07T15:13:13Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
// predefined color keywords
-->{{#vardefine:infocard:color_melee|#d20000}}<!--
-->{{#vardefine:infocard:color_warrior|{{#var:infocard:color_melee}}}}<!--
-->{{#vardefine:infocard:color_ranged|#21a08d}}<!--
-->{{#vardefine:infocard:color_ranger|{{#var:infocard:color_ranged}}}}<!--
-->{{#vardefine:infocard:color_magic|#9d0d79}}<!--
-->{{#vardefine:infocard:color_mage|{{#var:infocard:color_magic}}}}<!--
-->{{#vardefine:infocard:color_summoning|#066aff}}<!--
-->{{#vardefine:infocard:color_summon|{{#var:infocard:color_summoning}}}}<!--
-->{{#vardefine:infocard:color_summoner|{{#var:infocard:color_summoning}}}}<!--
// characteristic "terraria" color
-->{{#vardefine:infocard:color_terraria|var(--theme-accent-color)}}<!-- CSS variable to support light and dark themes
// default color
-->{{#vardefine:infocard:color_default|var(--custom-accent-border-color)}}<!-- CSS variable to support light and dark themes
// translate theme and color parameters according to the predefined keywords if possible, otherwise leave them as-is
-->{{#vardefine:infocard:color|{{#var:infocard:color_{{lc:{{{theme|{{{color|}}}}}}}}|{{{theme|{{{color|}}}}}}}}}}<!--
-->{{#vardefine:infocard:color-all|{{#var:infocard:color_{{lc:{{{theme|}}}}}|{{{theme|}}}}}}}<!--
--><div class="infocard clearfix {{{class|}}}" style="{{{css|{{{style|}}}}}}" id="{{{id|}}}"><!--
// minicard to the side
-->{{#if:{{{image|{{{imagealt|}}}}}}|<!--
--><div class="card"><!--
--><div class="image clearfix" style="width:{{{size|250px}}}">{{{imagealt|[[File:{{{image|}}}|{{{size|250px}}}|link=]]}}}</div><!--
// there are 3 text parts to display in the minicard: intro, textlist, outro
// textlist is comprised of headings and texts and is defined via "card_" parameters, e.g. "|card_foo=Heading|foo=Text"
-->{{#vardefine:infocard:textlist|}}<!--
// concatenate all "card_x" and "x" parameters into one big textlist
-->{{#forargs:card_|key|heading|<!-- e.g. with "|card_foo=Heading|foo=Text", #var:key is "foo" and #var:heading is "Heading"
-->{{#vardefine:infocard:textlist|{{#var:infocard:textlist}}<!-- concat
--><dt>{{#var:heading}}</dt><!--
--><dd>{{{ {{#var:key}}|}}}</dd><!-- e.g. "Text" with "|card_foo=Heading|foo=Text"
-->}}<!--
-->}}<!--
// open the text content <div> of the minicard
-->{{#vardefine:infocard:minicard_closingtag|}}<!--
-->{{#if:{{{cardintro|{{{cardoutro|{{#var:infocard:textlist}}}}}}}}|<!--
--><div class="content clearfix" style="width:{{{size|250px}}}">{{#vardefine:infocard:minicard_closingtag|</div>}}<!--
-->}}<!--
// display part 1: intro text
-->{{#vardefine:infocard:closingtag|}}<!--
-->{{#if:{{{cardintro|}}}|<!--
--><div class="intro">
<nowiki/><!--
-->{{#vardefine:infocard:closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{cardintro|}}}<!-- we reduce the post-expand include size by not putting this in the #if: clause above
-->{{#var:infocard:closingtag}}<!--
// display part 2: textlist
-->{{#vardefine:infocard:closingtag|}}<!--
-->{{#if:{{#var:infocard:textlist}}|<!--
--><dl>{{#vardefine:infocard:closingtag|</dl>}}<!--
-->}}<!--
-->{{#var:infocard:textlist}}<!--
-->{{#var:infocard:closingtag}}<!--
// display part 3: outro
-->{{#vardefine:infocard:closingtag|}}<!--
-->{{#if:{{{cardoutro|}}}|<!--
--><div class="outro">
<nowiki/><!--
-->{{#vardefine:infocard:closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{cardoutro|}}}<!--
-->{{#var:infocard:closingtag}}<!--
// close the text content <div> of the minicard
-->{{#var:infocard:minicard_closingtag}}<!--
--></div><!--
-->}}<!--
// main heading of the infocard
-->{{#if:{{{name|}}}|<!--
-->{{infocard/mainheading<!--
-->|name={{{name|}}}<!--
-->|subname={{{subname|}}}<!--
-->|namenote={{{namenote|}}}<!--
-->|type={{{type|}}}<!--
-->|padding={{{size|}}}<!--
-->|icon={{#if:{{{image|{{{imagealt|}}}}}}||{{{icon|}}}}}<!--
-->|iconalt={{#if:{{{image|{{{imagealt|}}}}}}||{{{iconalt|}}}}}<!--
-->}}<!--
-->}}<!--
// intro text
-->{{#vardefine:infocard:intro_closingtag}}<!--
-->{{#if:{{{intro|}}}|<!--
--><div class="intro" style="{{{intro_css|{{{intro_style|}}}}}}">
<nowiki/><!--
-->{{#vardefine:infocard:intro_closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{intro|}}}<!-- we reduce the post-expand include size by not putting this in the #if: clause above
-->{{#var:infocard:intro_closingtag}}<!--
// boxes
// these are defined via "title_" parameters, e.g. "|title_foo=Box heading|foo=Box text"
-->{{#forargs:title_|key|heading|<!-- e.g. with "|title_foo=Box heading|foo=Box text", #var:key is "foo" and #var:heading is "Box heading"
-->{{infocard/box|title={{#var:heading}}|{{{ {{#var:key}}|}}}}}<!--
-->}}<!--
// outro text
-->{{#vardefine:infocard:outro_closingtag}}<!--
-->{{#if:{{{outro|{{{text|}}}}}}|<!--
--><div class="outro" style="{{{outro_css|{{{outro_style|}}}}}}">
<nowiki/><!--
-->{{#vardefine:infocard:outro_closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{outro|{{{text|}}}}}}<!--
-->{{#var:infocard:outro_closingtag}}<!--
--></div><!--
--></includeonly><noinclude>
{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:Infocard}}
</noinclude>
c8de6606fd1e985fc5f630b8dfc9a56ebb4e30cf
Template:Common
10
58
364
363
2024-02-07T15:13:13Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
DISPLAYTITLE
Display the translated page title for translation project
pages and/or display the italicized page title.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// #var:__global__trp_displaytitle is set in {{translation projects}}
// #var:__global__is_italic_title is set in {{italic title}}
-->{{#vardefine:_displaytitle|<!--
-->{{#if:{{#var:__global__trp_displaytitle}}|<!--
// display the translated page title
-->{{#if:{{#var:__global__is_italic_title}}|<!--
--><i>{{#var:__global__trp_displaytitle}}</i><!--
-->|<!--
-->{{#var:__global__trp_displaytitle}}<!--
-->}}<!--
-->{{#var:__global__trp_displaytitle_suffix}}<!--
-->|<!--
// display the regular title
-->{{#if:{{#var:__global__is_italic_title}}|<!--
-->{{#ifeq:{{NAMESPACENUMBER}}|0||{{NAMESPACE}}:}}<i>{{PAGENAME}}</i><!-- don't italicize the namespace
-->}}<!--
-->}}<!--
-->}}<!--
-->{{#if:{{#var:_displaytitle}}|{{DISPLAYTITLE:{{#var:_displaytitle}}|noreplace}}}}<!--
--></includeonly><!--
--><noinclude>
This template is used for common processes on every page. It is called in {{tl|language info}}.
{{category|Templates}}
</noinclude>
f78bf5339dd5b66ba156a2c44176f20e431f3609
Template:L10n
10
63
374
373
2024-02-07T15:13:13Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
#REDIRECT [[template:Localization]]
a22276c07ff24cff65d115a753ea16d8c92d06b5
Template:(
10
66
380
379
2024-02-07T15:13:14Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
{{<noinclude>{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:(}}
</noinclude>
2f2d2587b4eda12c8c6ff378c98c2edbd64e92d9
Template:)
10
67
382
381
2024-02-07T15:13:14Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
}}<noinclude>{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:)}}
</noinclude>
5e249e98c325a5e3f9025504b811d5dc23480722
Template:Bool
10
68
384
383
2024-02-07T15:13:14Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly>{{#switch:{{lc:{{{1|}}}}}|y|1|yes|true=y|#default={{#if:{{{1|}}}||{{{2|}}}}}}}</includeonly><noinclude>{{doc}}
{{language info|en=Template:Bool}}
</noinclude>
08bda7d46f97a71529fe2eea6893f1668fbdf584
Template:Error
10
69
386
385
2024-02-07T15:13:14Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
// localization info is autoloaded from Template:Error/l10n
--><span class="error" data-source="{{{from|{{{source|}}}}}}" title="{{{title|}}}">{{l10n|error|intro}}{{{1|{{{text|}}}}}}</span><!--
-->{{#if:{{bool|{{{cate|y}}}}}|<!--
// general, common error cate
-->[[Category:{{l10n|error|cate}}]]<!--
// specific error cate based on the source of the error
-->{{#if:{{{from|{{{source|}}}}}}|[[Category:{{l10n|error|cate_from|$from$={{{from|{{{source|}}}}}}}}]]}}<!--
// other, custom error cates
-->{{#fornumargs:k|v|<!-- iterate over all unnamed parameters
-->{{#ifeq:{{#var:k}}|1||<!-- skip $1
-->{{#if:{{#var:v}}|[[Category:{{#var:v}}]]}}<!--
-->}}<!--
-->}}<!--
-->{{#forargs:cate|k|v|<!-- iterate over all parameters of the format "cate<number>", including $cate
-->{{#if:{{isNumber|onlypositive=y|0{{#var:k}}}}|<!--
-->{{#if:{{#var:v}}|[[Category:{{#var:v}}]]}}<!--
-->}}<!--
-->}}<!--
-->}}<!--
--></includeonly><!--
--><noinclude>{{i18n-ready}}{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:Error}}
</noinclude>
39e03d8560d763dfd6699fb0f091ed8614c57034
Template:Extension DPL
10
2
388
2
2024-02-07T15:13:14Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<noinclude>This page was automatically created. It serves as an anchor page for all '''[[Special:WhatLinksHere/Template:Extension_DPL|invocations]]''' of [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:DynamicPageList3 Extension:DynamicPageList3].</noinclude>
087ffd4625ae7b1fea3436ec3f929e82ee739d29
Template:Ifexists
10
70
390
389
2024-02-07T15:13:14Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly>{{#if: {{#dpl:skipthispage = false | redirects = {{{redirects|include}}} | noresultsheader = 1 | title = {{{1|}}}}} | {{{3|}}} | {{{2|}}} }}</includeonly><noinclude>{{doc}}
{{language info|en=Template:Ifexists}}
</noinclude>
0e3c5bc19f1f8c0e766286883ad2bd1a2a87fe4a
Template:Options/get
10
71
392
391
2024-02-07T15:13:14Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
$1: namespace, $2: key
$1 $2 are not trimmed for better performance.
auto init from {{<ns>/initOptions}}.
-->{{#if:{{#var:optionsInitialized:{{{1|}}}}}||{{#if:{{{1|}}}|{{#vardefine:_| {{ {{{1|}}}/initOptions }} }}}}}}<!--
get option value
-->{{#var:options:{{{1|}}}:{{#var:optionsAlias:{{{1|}}}:{{{2|}}}|<__invalid__>}}}}<!--
--></includeonly><noinclude>
example:
<pre>
{{options/get|namespace|foo}}
</pre>
See {{tl|options}} for more info.
{{language info|en=Template:Options/get}}
</noinclude>
81dceb5875606d17e78e7f1eb92baf07950f48d1
Template:Options/init
10
72
394
393
2024-02-07T15:13:15Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
set flag:
-->{{#vardefine:optionsInitialized:{{{1|}}}|y}}<!--
-->{{#vardefine:options:{{{1|}}}:<__invalid__>|{{error|Inexistent option key}}}}<!--
all $key=$default_value pairs
-->{{#vardefine:optionsKeys:{{{1|}}}|}}<!--
-->{{#forargs:key:|$key|$value|<!--
-->{{#vardefine:optionsKeys:{{{1|}}}|{{#var:optionsKeys:{{{1|}}}}}{{#var:$key}},}}<!-- append to key list
-->{{#vardefine:optionsAlias:{{{1|}}}:{{#var:$key}}|{{#var:$key}}}}<!-- register key alias (for better performance)
//default value:
-->{{#switch:{{#var:$value}}<!--
-->|(bool:true)=<!-- this option is bool type, for stored value: empty means true, nonempty means false.
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|}}<!-- default is empty
// input mapping: y/yes/on => (empty), n/no/off => n
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:y|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:yes|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:on|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:no|n}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:off|n}}<!--
-->|(bool:false)=<!-- this option is bool type, for stored value: empty means false, nonempty means true.
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|}}<!-- default is empty
// input mapping: y/yes/on => y, n/no/off => (empty)
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:yes|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:on|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:n|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:no|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:off|}}<!--
-->|(bool)=<!-- this option is bool type, for stored value: "y" means true, "n" means false, other means undefined.
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|}}<!-- default is empty
// input mapping: y/yes/on => y, n/no/off => n
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:yes|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:on|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:no|n}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:off|n}}<!--
-->|#default=<!--
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|{{#var:$value}}}}<!--
-->}}<!--
-->}}<!--
-->{{#arraydefine:optionsKeys:{{{1|}}}|{{#var:optionsKeys:{{{1|}}}}}|,|unique}}<!--
key alias:
-->{{#forargs:alias:|$key|$value|<!--
-->{{#vardefine:optionsAlias:{{{1|}}}:{{#var:$key}}|{{#var:$value}}}}<!--
-->}}<!--
value alias:
-->{{#forargs:value:|$key|$value|<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}|{{#var:$value}}}}<!-- here $key is "name:value"
-->}}<!--
//make an init snapshot.
//don't use {{options/snap}} here to avoid template loop
-->{{#arrayprint:optionsKeys:{{{1|}}}||@@@@|<!--
-->{{#vardefine:optionsSnap:{{{1|}}}:__RESET__:@@@@|{{#var:options:{{{1|}}}:{{#var:optionsAlias:{{{1|}}}:@@@@|<__invalid__>}}}}}}<!--
-->}}<!--
==== doc mode: gen doc, table rows ====
-->{{#if:{{#var:__FLAG_OPTIONS_AUTODOC__}}|<!--
key name:
-->{{#arrayprint:optionsKeys:{{{1|}}}||@@@@|<!--
-->{{#vardefine:optionsDoc:@@@@|<td><code>@@@@</code></td><td>}}<!--
-->}}<!--
key alias:
-->{{#forargs:alias:|$key|$value|<!-- $key is alias, $value is origin key name.
-->{{#vardefine:optionsDoc:{{#var:$value}}|{{#var:optionsDoc:{{#var:$value}}}}<code>{{#var:$key}}</code><br/>}}<!--
-->}}<!--
initial value:
-->{{#arrayprint:optionsKeys:{{{1|}}}||@@@@|<!--
-->{{#vardefine:optionsDoc:@@@@|{{#var:optionsDoc:@@@@}}</td><td><code>{{#var:options:{{{1|}}}:@@@@|<i><small>(empty)</small></i>}}</code></td><td>}}<!--
-->}}<!--
value alias:
-->{{#forargs:value:|$key|$value|<!--
//here $key is "name:value"
-->{{#vardefine:_key|{{#explode:{{#var:$key}}|:|0|2}}}}<!--
-->{{#vardefine:_from|{{#explode:{{#var:$key}}|:|1|2}}}}<!--
-->{{#vardefine:optionsDoc:{{#var:_key}}|{{#var:optionsDoc:{{#var:_key}}}}<code>{{#var:_from}}</code> → <code>{{#var:$value|<i><small>(empty)</small></i>}}</code><br/>}}<!--
-->}}<!--
// (bool:true) and (bool:false)
-->{{#forargs:key:|$key|$value|<!--
-->{{#switch:{{#var:$value}}<!--
-->|(bool:true)=<!-- this option is bool type, for stored value: empty means true, nonempty means false.
// input mapping: y/yes/on => (empty), n/no/off => n
-->{{#vardefine:optionsDoc:{{#var:$key}}|{{#var:optionsDoc:{{#var:$key}}}}<!--
--><code>y</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>yes</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>on</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>no</code> → <code>n</code><br/><!--
--><code>off</code> → <code>n</code><br/><!--
-->}}<!--
-->|(bool:false)=<!-- this option is bool type, for stored value: empty means false, nonempty means true.
// input mapping: y/yes/on => y, n/no/off => (empty)
-->{{#vardefine:optionsDoc:{{#var:$key}}|{{#var:optionsDoc:{{#var:$key}}}}<!--
--><code>yes</code> → <code>y</code><br/><!--
--><code>on</code> → <code>y</code><br/><!--
--><code>n</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>no</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>off</code> → <code><i><small>(empty)</small></i></code><br/><!--
-->}}<!--
-->|(bool)=<!-- this option is bool type, for stored value: "y" means true, "n" means false, other means undefined.
// input mapping: y/yes/on => y, n/no/off => n
-->{{#vardefine:optionsDoc:{{#var:$key}}|{{#var:optionsDoc:{{#var:$key}}}}<!--
--><code>yes</code> → <code>y</code><br/><!--
--><code>on</code> → <code>y</code><br/><!--
--><code>no</code> → <code>n</code><br/><!--
--><code>off</code> → <code>n</code><br/><!--
-->}}<!--
-->|#default=<!-- nothing
-->}}<!--
-->}}<!--
-->{{#vardefine:__FLAG_OPTIONS_AUTODOC__|}}<!-- reset flag
-->}}<!--
--></includeonly><noinclude>
example:
<pre>
{{options/init|item<!--
-->|key:icons=yes<!-- default value of "icons" option is "yes"
-->|key:small=no<!-- default value of "small" option is "no"
-->|value:small:n=no<!-- value "n" for "small" is same as "no", {{options/set|item|small=n}} is same as {{options/set|item|small=no}}
-->|key:style=<!-- default value of "style" is empty value.
-->|alias:css=style<!-- "css" is an alias of "style", so {{options|item|css}} is same as {{options|item|style}}
-->|key:wrap=(bool:true)<!-- bool value, default value is empty, empty value means true, nonempty value means false
-->|key:nolink=(bool:false)<!-- default value is empty, e, nonempty value means false
-->}}
</pre>
See {{tl|options}} for more info.
{{language info|en=Template:Options/init}}
</noinclude>
9a98f5969cdd42001db213a5a2d61adcf78d9c95
Template:Tl
10
73
396
395
2024-02-07T15:13:15Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
-->{{#vardefine:tl:nolink|{{bool|{{{nl|}}}}}}}<!--
-->{{#if:{{bool|{{{code|}}}}}|<code>}}<!--
-->{{(}}<!--
-->{{#uesc:{{#rmatch:{{{1|}}}|^#(\s*(\w+?)\s*)(:(.*)${{!}}$)|<esc><!--
// parser functions
-->{{#vardefine:tl:parserf_link|}}<!--
-->{{#vardefine:tl:parserf_link|{{tl/parser function links|$2}}}}<!-- get link to doc page
--><nowiki/>#<!--
-->{{#if:{{#var:tl:nolink}}{{#if:{{#var:tl:parserf_link}}||y}}|<!--
--><span title="#$1:">$1</span><!--
-->|<!--
--><span class=plainlinks>[{{tl/parser function links|$2}}##$2 $1]</span><!--
-->}}<!--
-->:$4<!--
--></esc>|<!--
// templates
-->{{#if:{{#var:tl:nolink}}{{ifexists|Template:{{{1}}}|3=n}}|<!--
--><span title="{{ns:Template}}:{{ucfirst:{{{1}}}}}">{{{1}}}</span><!--
-->|<!--
-->[[Template:{{{1}}}|{{{1}}}]]<!--
-->}}<!--
-->}}}}<!--
-->{{#or:<!--
-->{{#dplreplace:{{{__paramslist|}}}|/₪/|{{!}}}}<!--
-->|<!--
-->{{#fornumargs:k|v|<!--
-->{{#ifexpr:{{#var:k}}!=1|<!-- skip first parameter
-->{{!}}{{#var:v}}<!--
-->}}<!--
-->}}<!--
-->}}<!--
-->{{)}}<!--
-->{{#if:{{bool|{{{code|}}}}}|</code>}}<!--
--></includeonly><!--
--><noinclude>{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:Tl}}
</noinclude>
027b14ee0e8cd437c3feb733518badca06e2bf9a
Template:Fullurl
10
8
402
41
2024-02-07T15:13:16Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly>{{#if: {{{nolink|}}} | <nowiki>http://help.gamepedia.com/index.php?title=</nowiki>{{{1}}}{{#if: {{{2|}}} | &{{{2}}} }} |<!--
--><span class="plainlinks">{{#if: {{{text|}}} | [ }}{{fullurl: {{{1}}} | {{{2|}}} }} {{#if: {{{text|}}} | {{{text}}}]}}</span>}}</includeonly><noinclude>{{doc}}
[[Category:Formatting templates|{{PAGENAME}}]]</noinclude>
46367eacd22a6dce7076a2ab94d525b760c66e2b
Template:IsNumber
10
76
404
403
2024-02-07T15:13:16Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly>{{#rmatch:{{{1|}}}|{{#if:{{bool|{{{onlypositive|}}}}}|^\d+$|^-?\d+$}}|y}}</includeonly><noinclude>{{doc}}
{{language info|en=Template:IsNumber}}
</noinclude>
58acf6a9e41a46416c766f4d714f90a52953cf69
Template:Category
10
77
406
405
2024-02-07T15:13:16Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
-->{{#if:{{langList|isOnWiki|{{{lang|{{lang|}}}}}}}|<!--
-->[[Category:<!--
-->{{{1|}}}/{{{lang|{{lang|}}}}}<!-- category name
-->{{#ifeq:{{{2|-unset}}}|{{{2|unset-}}}|{{!}}{{{2}}}}}<!-- category sortkey, only if set (can be blank)
--> ]]<!-- the space here is needed for blank sortkeys
-->|<!--
// loading glossary for this language:
-->{{#if:{{#dplvar:_cate_glossary_{{{lang|{{lang|}}}}}}}|| {{category/db-{{{lang|{{lang|}}}}}}} }}<!--
-->[[Category:<!--
-->{{#or:{{#dplvar:_cate_glossary-{{ucfirst:{{{1|}}}}}}}|{{tr|{{{1|}}}|lang={{{lang|{{lang|}}}}}}}}}<!-- category name
-->{{#ifeq:{{{2|-unset}}}|{{{2|unset-}}}|{{!}}{{#or:{{#dplvar:_cate_glossary-{{ucfirst:{{{2|}}}}}}}|{{tr|{{{2|}}}|lang={{{lang|{{lang|}}}}}}}}}}}<!-- category sortkey, only if set (can be blank)
--> ]]<!--
-->}}<!--
--></includeonly><!--
--><noinclude>{{i18n-ready}}{{doc}}
{{category|Templates}}
{{language info|en=Template:Category}}
</noinclude>
353882f9f8269d2efb786ee796f9bcf2f5604359
Template:Reflist
10
78
408
407
2024-02-07T15:13:16Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<div class="reflist <!--
-->{{#if:{{{1|}}}{{{colwidth|}}}|reflist-columns references-column-width}} <!--
-->{{#switch:{{{liststyle|{{{group|}}}}}}|upper-alpha|upper-roman|lower-alpha|lower-greek|lower-roman=reflist-{{{liststyle|{{{group}}}}}}}} <!--
-->{{#if:{{{1|}}}|{{#iferror:{{#ifexpr: {{{1|1}}} > 1 }}||{{#switch:{{{1|}}}|1=|2=reflist-columns-2|#default=reflist-columns-3}} }}}}" <!-- end class
-->{{#if: {{{1|}}}<!-- start style -->
| {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }} |style="column-width: {{{1}}};"}}
| {{#if: {{{colwidth|}}}|style="column-width: {{{colwidth}}};"}}
}} <!--
-->{{#if:{{{css|{{{style|}}}}}}|style="{{{css|{{{style|}}}}}}"}}>
{{#tag:references|{{{refs|}}}|group={{{group|}}}|responsive={{#if:{{{1|}}}{{{colwidth|}}}|0|1}}}}</div><noinclude>
{{doc}}
{{category|Extension templates}}
{{language info|en=Template:Reflist}}
</noinclude>
d7391d0b0cc941a0a8276d71f36ebbb71f838726
Template:Flexend
10
79
410
409
2024-02-07T15:13:16Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly></div></includeonly><noinclude>
Internal template. See [[Template:Flexbox]] for documentation.
{{category|Flexbox templates}}
{{language info|en=Template:Flexend}}
</noinclude>
1bf8a3e7d576436497a47201ebd681739fc7d04c
Template:Flexstart
10
80
412
411
2024-02-07T15:13:16Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><div style="<!--
======= type: flexbox and/or flexitem =======
//parameter: {{{1}}}, 'item' for flexitem only (not a flexbox); 'inline' or 'inlinebox' for inline-flexbox; other values for flexbox
-->{{#switch:{{{1|}}}<!--
-->|inlinebox|inline=display:inline-flex;<!--
-->|item=<!-- need nothing
-->|#default=display:flex;<!--
-->}}<!--
======= parameters for flexbox =======
-->{{#ifeq:{{{1}}}|item||<!-- only if $type != item
//parameter: wrap, default value is 'wrap'
-->{{#switch:{{{wrap|}}}<!--
-->|no|nowrap=flex-wrap:nowrap;<!--
-->|#default=flex-wrap:wrap;<!--
-->}}<!--
//paramter: direction, no need to set up default, just left blank to use css default.
-->{{#switch:{{{direction|}}}<!--
-->|=<!-- Only if explicitly specified
-->|row-reverse=flex-direction:row-reverse;<!--
-->|column=flex-direction:column;<!--
-->|column-reverse=flex-direction:column-reverse;<!--
-->|#default=flex-direction:row;<!--
-->}}<!--
//paramter: justify, no need to set up default, just left blank to use css default.
-->{{#switch:{{{justify|}}}|<!--
-->|=<!-- Only if explicitly specified
-->|left|flex-start=justify-content:flex-start;<!--
-->|right|flex-end=justify-content:flex-end;<!--
-->|justified|space-between=justify-content:space-between;<!--
-->|space-around=justify-content:space-around;<!--
-->|#default=justify-content:{{{justify|}}};<!--
-->}}<!--
//paramter: alignitems, no need to set up default, just left blank to use css default.
-->{{#switch:{{{alignitems|}}}<!--
-->|=<!-- Only if explicitly specified
-->|top|flex-start=align-items:flex-start;<!--
-->|bottom|flex-end=align-items:flex-end;<!--
-->|middle=align-items:center;<!--
-->|#default=align-items:{{{alignitems|}}};<!--
-->}}<!--
//paramter: alignlines, no need to set up default, just left blank to use css default.
-->{{#switch:{{{alignlines|}}}<!--
-->|=<!-- Only if explicitly specified
-->|top|flex-start=align-content:flex-start;<!--
-->|bottom|flex-end=align-content:flex-end;<!--
-->|justified|space-between=align-content:space-between;<!--
-->|#default=align-content:{{{alignlines|}}};<!--
-->}}<!--
-->}}<!-- end if $type != item
======= parameters for flexitem =======
//parameter: order
-->{{#if:{{{order|}}}|<!--
-->order:{{{order|}}};<!--
-->}}<!--
//parameter: grow
-->{{#if:{{{grow|}}}|<!--
-->flex-grow:{{{grow|}}};<!--
-->}}<!--
//parameter: shrink
-->{{#if:{{{shrink|}}}|<!--
-->flex-shrink:{{{shrink|}}};<!--
-->}}<!--
//parameter: basis
-->{{#if:{{{basis|}}}|<!--
-->flex-basis:{{{basis|}}};<!--
-->}}<!--
//paramter: alignself, no need to set up default, just left blank to use css default.
-->{{#switch:{{{alignself|}}}<!--
-->|=<!-- Only if explicitly specified
-->|top|flex-start=align-self:flex-start;<!--
-->|bottom|flex-end=align-self:flex-end;<!--
-->|middle=align-self:center;<!--
-->|#default=align-self:{{{alignself|}}};<!--
-->}}<!--
======= parameters for general css property or html attribute =======
//parameter: width
-->{{#if:{{{width|}}}|width:{{{width|}}};}}<!--
//parameter: height
-->{{#if:{{{height|}}}|height:{{{height|}}};}}<!--
//paramter: css / style
-->{{#if:{{{css|{{{style|}}}}}}|{{{css|{{{style|}}}}}};}}<!--
//parameter: class arrtibute
-->"{{#if:{{{cssclass|{{{class|}}}}}}|<nowiki/> class="{{{cssclass|{{{class|}}}}}}"}}<!--
//parameter: id arrtibute
-->{{#if:{{{id|}}}|<nowiki/> id="{{{id|}}}"}}<!--
ending tag-->></includeonly><noinclude>
Internal template. See [[Template:Flexbox]] for documentation.
{{category|Flexbox templates}}
{{language info|en=Template:Flexstart}}
</noinclude>
52c1286675565f2513542dbccfbc96b4414dd28a
Template:Infocard/box
10
81
414
413
2024-02-07T15:13:16Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
--><div class="box {{{class|{{options/get|infocard|box-class}}}}}" style="{{{css|{{{style|{{options/get|infocard|box-css}}}}}}}}"><!--
-->{{{titlealt|{{#if:{{{title|}}}|<!--
--><div class="title" style="border-left-color:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color-all}}}}}}};"><!--
--><span>{{{title|}}}</span><!--
--></div><!--
-->}}}}}<!--
--><div class="content">
{{{1|}}}
</div><!--
--></div><!--
--></includeonly><noinclude>
{{internal subtemplate}}
{{category|Formatting templates}}
{{language info|en=Template:Infocard/box}}
</noinclude>
26edf2e29edb5e7afe26d930d1c3f74dacb3a746
Template:Infocard/initOptions
10
82
416
415
2024-02-07T15:13:17Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
-->{{options/init|infocard<!--
-->|key:size=250px<!--
-->|alias:cardsize=size<!--
-->|alias:minicardsize=size<!--
-->|key:class=<!--
-->|key:css=<!--
-->|alias:style=css<!--
-->|key:color=<!--
-->|key:theme=<!--
-->|key:box-css=<!--
-->|alias:box-style=box-css<!--
-->|key:box-class=<!--
-->}}<!--
--></includeonly><!--
--><noinclude>{{options subtemplate}}
{{language info|en=Template:Infocard/initOptions}}
</noinclude>
be81a52038015af290e88061f13056213182a26c
Template:Infocard/heading
10
83
418
417
2024-02-07T15:13:17Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><div class="heading">{{{1|}}}</div></includeonly><noinclude>
{{internal subtemplate}}
{{category|Formatting templates}}
{{language info|en=Template:Infocard/heading}}
</noinclude>
e0a88b9d802d390bb6b6bdcb8f108b5c0924f005
Template:Infocard/mainheading
10
84
420
419
2024-02-07T15:13:17Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
--><div class="main-heading" style="background:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color}}}}}}};border-right-color:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color}}}}}}};padding-right:{{{padding|0}}};{{{style|{{{css|}}}}}}"><!--
// display text
--><div class="hgroup"><!--
-->{{#if:{{{type|}}}|<div>{{{type}}}</div>}}<!--
--><div class="main"><!--
-->{{{1|{{{name|}}}}}}<!--
-->{{#if:{{{namenote|}}}|<span class="namenote"> {{{namenote}}}</span>}}<!--
--></div><!--
-->{{#if:{{{subname|}}}|<div>{{{subname}}}</div>}}<!--
--></div><!--
// display icon
// $icon and $iconalt might be set to blank values, e.g. when this template is called from {{infocard}} or {{infocard/start}}, hence the #or
-->{{#if:{{{icon|}}}{{{iconalt|}}}|<!--
--><div class="{{{iconclass|}}} icon clearfix" style="--iconsize: {{{iconsize|auto}}}">{{#or:{{{iconalt|}}}|[[File:{{{icon|}}}|link=]]}}</div><!--
-->}}<!--
--></div><!--
--></includeonly><!--
--><noinclude>
{{internal subtemplate}}
{{category|Formatting templates}}
{{language info|en=Template:Infocard/mainheading}}
</noinclude>
26cd9dfa770c9e863ffdb04a2f357effbcba2410
Template:Dotlist
10
85
422
421
2024-02-07T15:13:17Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
--><div class="dotlist {{#switch:{{{bold|{{#dplvar:_dotlist_flag_bold|}}}}}|n|no=nobold}} {{{space|{{#dplvar:_dotlist_flag_space|}}}}} {{#switch:{{{dot|{{#dplvar:_dotlist_flag_dot|}}}}}|n|no=nodot}} {{#if:{{bool|{{{inline|}}}}}|inline}} {{{class|{{#dplvar:_dotlist_flag_class|}}}}}" style="{{{css|{{#dplvar:_dotlist_flag_css|}}}}};{{{style|}}}"><!--
-->{{#if:{{{title|}}}|<span class="title">{{{title|}}}</span>}}<!--
-->{{#if:{{bool|{{{paren|}}}}}|(}}<ul><!--
-->{{#fornumargs:_|v|<li>{{#var:v}}</li>}}<!--
--></ul>{{#if:{{bool|{{{paren|}}}}}|)}}<!--
--></div><!--
--></includeonly><!--
--><noinclude>{{doc}}
{{category|Formatting templates}}
{{category|Dual-style templates}}
{{language info|en=Template:Dotlist}}
</noinclude>
bad27c97e01e1523180ed59832a17dbfb89d2580
Template:Transform
10
86
424
423
2024-02-07T15:13:17Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
// assemble a string of transformations by iterating over all parameters in order
-->{{#vardefine:transform:style|<!--
-->{{#forargs:|parametername|parametervalue|<!--
-->{{#switch:{{#var:parametername}}<!--
-->|flip= scaleY(-1)<!--
-->|mirror= scaleX(-1)<!--
-->|rotation= rotate({{#var:parametervalue}}deg)<!--
-->|scale= scale({{#var:parametervalue}},{{#var:parametervalue}})<!--
-->}}<!--
-->}}<!--
-->}}<!--
// output
--><div style="{{{style|}}}; display: {{{display|inline-block}}}; -moz-transform: {{#var:transform:style}}; -ms-transform: {{#var:transform:style}}; -o-transform: {{#var:transform:style}}; -webkit-transform: {{#var:transform:style}}; transform: {{#var:transform:style}}">{{{1}}}</div><!--
--></includeonly><noinclude>{{doc}}
{{category|Formatting templates}}
{{language info|en=Template:Transform}}
</noinclude>
7ef19129fe94dc16aca965453bf6dec4a7aa8160
Template:Color box
10
87
426
425
2024-02-07T15:13:18Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<span class="color-box" style="background:{{{1|}}}; border:1px solid {{{border|}}}; width:{{{size|{{{width|1.25em}}}}}}; height:{{{size|{{{height|1.25em}}}}}};"></span><!--
// display text:
-->{{#switch:{{bool|{{{text|}}}}}-{{#if:{{{textformat|}}}|y}}-{{#if:{{{1|}}}|y}}<!--
-->|y--y= <code>{{{1|}}}</code><!-- only if $text is true and $textformat is blank and $1 is not blank
-->|y-y-y= {{color box/textformat|{{{1}}}|textformat={{{textformat}}}}}<!-- only if $text is true and $textformat is not blank and $1 is not blank
-->}}<!--
--><noinclude>
{{lua|Color}}
{{doc}}
{{category|Templates}}
{{language info|en=Template:Color box}}
</noinclude>
67618133ebc851d30d8cd6a5b6f331ff6203424c
Template:Flexbox
10
88
428
427
2024-02-07T15:13:18Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
{{flexstart|{{#if:{{{inline|}}}|inline}}<!--
-->|wrap={{{wrap|}}}<!--
-->|direction={{{direction|}}}<!--
-->|justify={{{justify|}}}<!--
-->|alignitems={{{alignitems|}}}<!--
-->|alignlines={{{alignlines|}}}<!--
-->|width={{{width|}}}<!--
-->|height={{{height|}}}<!--
-->|css={{{css|{{{style|}}}}}}<!--
-->|cssclass={{{cssclass|{{{class|}}}}}}<!--
-->|id={{{id|}}}<!--
-->}}<!--
-->{{#fornumargs:_|v|{{#var:v}}}}<!--
-->{{flexend}}<noinclude>{{doc}}
{{category|Flexbox templates}}
{{language info|en=Template:Flexbox}}
</noinclude>
9c145e6a015b1e2826a1db5ef2f85dbc6edaad8d
Template:Infocard/doc
10
89
430
429
2024-02-07T15:13:20Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
This template is used to display content in an "info card", which may be visually more appealing than plain text in certain contexts.
It has several subtemplates:
* For documentation of {{tl|infocard/box}}, see [[#Custom boxes|Custom boxes]].
* For documentation of {{tl|infocard/mainheading}} and {{tl|infocard/heading}}, see [[#Custom headings|Custom headings]].
* For documentation of {{tl|infocard/start}}, {{tl|infocard/end}}, {{tl|infocard/box/start}}, and {{tl|infocard/box/end}}, see [[#Start and end|Start and end]].
== Standard usage ==
<div class="mw-code">{{(}} '''infocard'''<br/><!--
--><br/>| theme = ''<theme color>''<!--
--><br/>| color = ''<theme color>''<!--
--><br/>| class = ''<custom CSS classes>''<!--
--><br/>| ''style / css'' = ''<custom CSS rules>''<!--
--><br/>| id = ''<HTML ID>''<!--
--><br/><!--
--><br/>| name = ''<main heading text>''<!--
--><br/>| type = ''<smaller text above main heading>''<!--
--><br/>| namenote = ''<smaller text after main heading>''<!--
--><br/>| subname = ''<smaller text below main heading>''<!--
--><br/><!--
--><br/>| icon = ''<image name of icon next to main heading>''<!--
--><br/>| iconalt = ''<custom icon display>''<!--
--><br/>| iconsize = ''<icon size>''<!--
--><br/>| iconclass = ''<custom CSS classes for icon>''<!--
--><br/><!--
--><br/>| intro = ''<text above boxes>''<!--
--><br/>| ''intro_style / intro_css'' = ''<custom CSS rules for text>''<!--
--><br/>| ''title_<key1> / title_<key2> / ...'' = ''<box title>''<!--
--><br/>| ''<key1> / <key2> / ...'' = ''<box content>''<!--
--><br/>| ''text / outro'' = ''<text below boxes>''<!--
--><br/>| ''outro_style / outro_css'' = ''<custom CSS rules for text>''<!--
--><br/><!--
--><br/>| size = ''<minicard width>''<!--
--><br/>| image = ''<minicard image name>''<!--
--><br/>| imagealt = ''<custom minicard image display>''<!--
--><br/>| cardintro = ''<minicard text above sub-titles>''<!--
--><br/>| ''card_<key1> / card_<key2> / ...'' = ''<minicard sub-title>''<!--
--><br/>| ''<key1> / <key2> / ...'' = ''<text below respective minicard sub-title>''<!--
--><br/>| cardintro = ''<minicard text below sub-titles>''<!--
--><br/><!--
--><br/>{{)}}</div>
; theme, color
Color of the heading bars in the infocard. <code>$theme</code> affects both the card's principal heading and the headings of boxes, whereas <code>$color</code> only affects the card's principal heading. Values can be any valid CSS color (e.g. <code>#E4F0F7</code>, <code>red</code>, <code>rgba(0,0,0,0.3)</code>), or one of these predefined shortcuts (mainly intended for [[Guide:Class setups]]):
{| class="wikitable"
| {{dotlist|<code>melee</code>|<code>warrior</code>}}
| {{color box|text=y|#D20000}}
|-
| {{dotlist|<code>ranged</code>|<code>ranger</code>}}
| {{color box|text=y|#21A08D}}
|-
| {{dotlist|<code>magic</code>|<code>mage</code>}}
| {{color box|text=y|#9D0D79}}
|-
| {{dotlist|<code>summoning</code>|<code>summon</code>|<code>summoner</code>}}
| {{color box|text=y|#066AFF}}
|-
| {{dotlist|<code>terraria</code>}}
| {{color box|text=y|var(--theme-accent-color)}}
|-
| {{dotlist|<code>default</code>}}
| {{color box|text=y|var(--custom-accent-border-color)}}
|}
If omitted, the default value is {{color box|text=y|var(--theme-highlight-background)}}.
; class
CSS class(es) to add to the infocard. Values can be any custom classes and/or these special classes:
* <code>compact</code>: Reduces the size of the infocard somewhat, in particular the heading.
* <code>auto-width</code>: By default, the infocard occupies the entire width of the article, potentially overlapping floating elements like an image thumbnail. This class causes it to only take up available space, i.e. not overlap floating elements.
* <code>biome</code>: Designed for the special infocard format used on biomes' and events' pages (groups of boxes laid out in a flexbox format). See many pages in [[:Category:Environments]] for examples.
; style/css
Custom styling for the infocard.
; id
ID attribute for the infocard. Can be used for more complex styling via CSS, or for directly linking to the infocard (also see {{tl|anchor}}).
; name
Most prominent heading of the infocard.
; type
Smaller text above <code>$name</code>, to be used for grouping infocards.
; namenote
Smaller text directly after <code>$name</code>, for supplemental information.
; subname
Smaller text below <code>$name</code>, for supplemental information.
; icon
File name of the icon to be displayed to the right of the infocard's heading, without <code><nowiki>[[File:</nowiki></code> syntax (just the file name).
; iconalt
By default, the icon is displayed as <code><nowiki>[[File:$icon|link=]]</nowiki></code>. This parameter can be used to customize that, e.g. to link the icon.
; iconsize
Size of the icon in any valid CSS length (e.g. <code>20px</code>, <code>1.5em</code>), default is <code>auto</code>.
; iconclass
CSS class(es) to add to the icon.
; intro
Main content of the infocard. Will be displayed above any potential boxes.
; intro_style/intro_css
Custom styling for the <code>$intro</code> text.
; text/outro
Main content of the infocard. Will be displayed below any potential boxes.
; outro_style/outro_css
Custom styling for the <code>$text</code>/<code>$outro</code> text.
; title_<key>, <key>
Boxes to be displayed between <code>$intro</code> and <code>$text</code>/<code>$outro</code>. Assign each box an identifier (a "key"), then use the parameter <code>$title_<key></code> for the heading of the box and the parameter <code>$<key></code> for the content of the box. For instance, use <code>| title_box1 = First box | box1 = Lorem ipsum</code> to display a box with the heading "First box" and the content "Lorem ipsum". <code>box1</code> is the identifier ("key") in this example.
; image
Enables a "mini card" to the side of the infocard which consists of an image (as defined by this parameter, without <code><nowiki>[[File:</nowiki></code> syntax) and potentially additional text below it. If the minicard is enabled, the <code>$icon</code> will not be displayed, because they both occupy the same spot.
; imagealt
By default, the image is displayed as <code><nowiki>[[File:$image|$size|link=]]</nowiki></code>. This parameter can be used to customize that, e.g. to link the image.
; size
Width of the image/minicard (without border):
* If <code>$image</code> is used, the image will be as wide as the minicard. The value for <code>$size</code> must be in pixels (because it must conform to the <code><nowiki>[[File:</nowiki></code> syntax).
* If <code>$imagealt</code> is used, <code>$size</code> will only affect the width of the minicard, as the image width is custom. The value for <code>$size</code> can be any valid CSS length (e.g. <code>200px</code>, <code>5em</code>).
The default value is <code>250px</code>.
; cardintro
Main content of the minicard. Will be displayed above any potential sub-headings.
; cardoutro
Main content of the minicard. Will be displayed below any potential sub-headings.
; card_<key>, <key>
Sub-headings to be displayed between <code>$cardintro</code> and <code>$cardoutro</code>. Assign each sub-heading an identifier (a "key"), then use the parameter <code>$card_<key></code> for the heading and the parameter <code>$<key></code> for the text below the heading. For instance, use <code>| card_part1 = First sub-heading | part1 = Lorem ipsum</code> to display a sub-heading "First sub-heading" and text "Lorem ipsum" below it. <code>part1</code> is the identifier ("key") in this example.
=== Visualization ===
This is a visualization of what part is affected by each parameter:
{{infocard
|type=<code><nowiki>{{{type}}}</nowiki></code>
|name=<code><nowiki>{{{name}}}</nowiki></code>
|namenote=<code><nowiki>{{{namenote}}}</nowiki></code>
|subname=<code><nowiki>{{{subname}}}</nowiki></code>
|imagealt=<div style="padding: 70px 0.5em;text-align: center; background: var(--theme-background-accent)"><code><nowiki>{{{image}}}</nowiki></code> or <code><nowiki>{{{imagealt}}}</nowiki></code><br/><br/>With <code><nowiki>{{{icon}}}</nowiki></code> or <code><nowiki>{{{iconalt}}}</nowiki></code>, this will be a simple icon instead of a full minicard.</div>
|size=300px
|cardintro=<code><nowiki>{{{cardintro}}}</nowiki></code>
|card_index1=<code><nowiki>{{{card_<key1>}}}</nowiki></code>
|index1=<code><nowiki>{{{<key1>}}}</nowiki></code>
|card_index2=<code><nowiki>{{{card_<key2>}}}</nowiki></code>
|index2=<code><nowiki>{{{<key2>}}}</nowiki></code>
|card_index3=...
|index3=...
|cardoutro=<code><nowiki>{{{cardoutro}}}</nowiki></code>
|intro=<code><nowiki>{{{intro}}}</nowiki></code>
|title_keyA=<code><nowiki>{{{title_<keyA>}}}</nowiki></code>
|keyA=<code><nowiki>{{{<keyA>}}}</nowiki></code>
|title_keyB=<code><nowiki>{{{title_<keyB>}}}</nowiki></code>
|keyB=<code><nowiki>{{{<keyB>}}}</nowiki></code>
|title_keyC=<code><nowiki>{{{title_<keyC>}}}</nowiki></code>
|keyC=<code><nowiki>{{{<keyC>}}}</nowiki></code>
|title_keyD=<code><nowiki>...</nowiki></code>
|keyD=<code><nowiki>...</nowiki></code>
|outro=<code><nowiki>{{{outro}}}</nowiki></code> or <code><nowiki>{{{text}}}</nowiki></code>
}}
=== Examples ===
==== Simple ====
<pre>{{ infocard
| name = Terraria
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| type = Game
| name = Terraria
| namenote = for {{desktop}}
| subname = Windows, macOS, Linux
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| type = Game
| name = Terraria
| namenote = for {{desktop}}
| subname = Windows, macOS, Linux
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| type = Game
| name = Terraria
| color = #168436
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| type = Game
| name = Terraria
| color = #168436
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
==== Icon ====
<pre>{{ infocard
| name = Terraria
| icon = Guide.png
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| icon = Guide.png
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Terraria
| iconalt = [[File:Tree.png|link=|x50px]]
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| iconalt = [[File:Tree.png|link=|x50px]]
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Terraria
| iconalt =
<div style="background:var(--theme-background);border-radius:100px">{{flexbox
|css=width:65px;
height:65px;
background: var(--theme-highlight-background);
border: 1px solid var(--theme-border-color);
border-radius:100px;
|alignitems=center
|justify=center
|[[File:Map Icon Guide.png|link=|35px]]
}}</div>
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| iconalt =
<div style="background:var(--theme-background);border-radius:100px">{{flexbox
|css=width:65px;
height:65px;
background: var(--theme-highlight-background);
border: 1px solid var(--theme-border-color);
border-radius:100px;
|alignitems=center
|justify=center
|[[File:Map Icon Guide.png|link=|35px]]
}}</div>
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
==== Boxes ====
<pre>{{ infocard
| name = Biomes
| intro = There are two important biomes: the [[Forest]] and the [[Desert]].
| title_forest = Forest biome
| forest =
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
| title_desert = Desert biome
| desert =
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
| outro = There are also other biomes.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Biomes
| intro = There are two important biomes: the [[Forest]] and the [[Desert]].
| title_forest = Forest biome
| forest =
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
| title_desert = Desert biome
| desert =
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
| outro = There are also other biomes.
}}
==== Minicard ====
<pre>{{ infocard
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 200px
| cardintro = A player in the Snow biome.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 200px
| cardintro = A player in the Snow biome.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 300px
| cardintro = Biome features:
| card_enemies = Enemies
| enemies = <nowiki/>
* Ice Slime
* Frozen Zombie
| card_drops = Enemy drops
| drops = Many useful items
| cardoutro = Also has its own [[music]] track.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 300px
| cardintro = Biome features:
| card_enemies = Enemies
| enemies = <nowiki/>
* Ice Slime
* Frozen Zombie
| card_drops = Enemy drops
| drops = Many useful items
| cardoutro = Also has its own [[music]] track.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Moon Lord
| text = The Moon Lord is the final boss of the game.
| imagealt =
<div style="
padding: 20px 20px 0;
background: #61BBC2;
margin-bottom: -15px;">
[[File:Moon Lord.png|160px|link=]]
</div>
| size = 200px
| card_drops = Drops
| drops = Some items
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Moon Lord
| text = The Moon Lord is the final boss of the game.
| imagealt =
<div style="
padding: 20px 20px 0;
background: #61BBC2;
margin-bottom: -15px;">
[[File:Moon Lord.png|160px|link=]]
</div>
| size = 200px
| card_drops = Drops
| drops = Some items
}}
== Custom boxes ==
The standard layout of an infocard's content is as described above: intro – boxes – outro. Because this can be limiting, it is possible to manually create boxes in the intro and outro. The subtemplate used for this is {{tl|infocard/box}}.
<code>{{(}} '''infocard/box''' | title = ''<box heading>'' | ''<box contents>'' | color = ''<theme color>'' | titlealt = ''<custom box heading format>'' | class = ''<custom CSS classes>'' | ''style/css'' = ''<custom styling>'' {{)}}</code>
; title
Heading of the box.
; First unnamed parameter
Contents of the box.
; color
Color of the heading bar; see [[#Standard usage|above]] for details.
; titlealt
Customize the format of the heading completely. See the source code of [[Template:Infocard/box]] for the default format and how this parameter overrides it.
; class
CSS class(es) to add to the box.
; style/css
Custom styling for the box.
=== Examples ===
==== Simple ====
<pre>{{ infocard
| name = Biomes
| text =
There are many important biomes. The first one is the Forest.
{{infocard/box | title = Forest biome |
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
}}
Another important one is the Desert.
{{infocard/box | title = Desert biome |
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}
There are many other important biomes.
{{infocard/box |
Worth mentioning are the [[Snow biome]] and the [[Jungle]].
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Biomes
| text =
There are many important biomes. The first one is the Forest.
{{infocard/box | title = Forest biome |
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
}}
Another important one is the Desert.
{{infocard/box | title = Desert biome |
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}
There are many other important biomes.
{{infocard/box |
Worth mentioning are the [[Snow biome]] and the [[Jungle]].
}}
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Biomes
| text =
At the bottom of the world there is a special biome.
{{infocard/box | title = The Underworld | color = #ff6d26 | class = small |
The Underworld is the deepest layer of the world. It is a large, open cavern that stretches across the bottom of the world, with a ceiling of Ash Blocks and a lower terrain of large lava pools, Ash Blocks, and Hellstone. It also contains numerous Ruined Houses, which are natural structures containing unique furniture and loot. The Wall of Flesh boss can be summoned in the Underworld; defeating it will cause the world to convert to Hardmode.
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Biomes
| text =
At the bottom of the world there is a special biome.
{{infocard/box | title = The Underworld | color = #ff6d26 | class = small |
[[The Underworld]] is the deepest layer of the world. It is a large, open cavern that stretches across the bottom of the world, with a ceiling of Ash Blocks and a lower terrain of large lava pools, Ash Blocks, and Hellstone. It also contains numerous Ruined Houses, which are natural structures containing unique furniture and loot. The Wall of Flesh boss can be summoned in the Underworld; defeating it will cause the world to convert to Hardmode.
}}
}}
==== Nested boxes ====
<pre>{{ infocard
| name = Weapons
| text =
{{infocard/box | title = Melee weapons | color = melee |
These are some melee weapons.
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Swords |[[Copper Shortsword]], [[Meowmere]] }}
{{infocard/box | style = width: 250px | title = Spears |[[Trident]], [[Mushroom Spear]] }}
{{flexend}}
}}
{{infocard/box | title = Ranged weapons | color = ranged |
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Bows |[[Hellwing Bow]], [[Phantasm]] }}
{{infocard/box | style = width: 250px | title = Guns |[[Musket]], [[Shotgun]] }}
{{infocard/box | style = width: 250px | title = Launchers |[[Rocket Launcher]], [[Grenade Launcher]] }}
{{flexend}}
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Weapons
| text =
{{infocard/box | title = Melee weapons | color = melee |
These are some melee weapons.
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Swords |[[Copper Shortsword]], [[Meowmere]] }}
{{infocard/box | style = width: 250px | title = Spears |[[Trident]], [[Mushroom Spear]] }}
{{flexend}}
}}
{{infocard/box | title = Ranged weapons | color = ranged |
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Bows |[[Hellwing Bow]], [[Phantasm]] }}
{{infocard/box | style = width: 250px | title = Guns |[[Musket]], [[Shotgun]] }}
{{infocard/box | style = width: 250px | title = Launchers |[[Rocket Launcher]], [[Grenade Launcher]] }}
{{flexend}}
}}
}}
== Custom headings ==
It is possible to replicate the standard heading at the top of the infocard elsewhere inside it. The subtemplate used for this is {{tl|infocard/mainheading}}.
<code>{{(}} '''infocard/mainheading''' | ''<main heading text>'' | type = ''<smaller text above>'' | namenote = ''<smaller text after>'' | subname = ''<smaller text below>'' | color = ''<theme color>'' | icon = ''<icon file name>'' | iconalt = ''<custom icon display>'' | iconsize = ''<icon size>'' | iconclass = ''<custom CSS classes for icon>'' {{)}}</code>
These parameters are exactly like the ones used for {{tl|nl=y|infocard}} (except that {{tl|nl=y|infocard/mainheading}} also accepts an unnamed parameter 1, as an alternative for <code>$name</code>). See [[#Standard usage|above]] for their descriptions.
An additional helper subtemplate is {{tl|infocard/heading}}, which displays a simple, less prominent heading anywhere in the infocard.
=== Examples ===
See [[#Examples|above]] for more examples of heading variations.
<pre>{{ infocard
| text =
There are many important biomes.
{{infocard/mainheading | Forest biome }}
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
{{infocard/mainheading | Desert biome }}
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| text =
There are many important biomes.
{{infocard/mainheading | Forest biome }}
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
{{infocard/mainheading | Desert biome }}
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| class = compact
| text =
{{infocard/mainheading | Melee weapons | color = melee }}
{{infocard/box |
{{infocard/heading| Swords }}
[[Copper Shortsword]], [[Meowmere]]
{{infocard/heading| Spears }}
[[Trident]], [[Mushroom Spear]]
}}
{{infocard/mainheading | Ranged weapons | color = ranged | iconalt = {{transform|mirror=y|[[File:Vortex armor.png|x35px]]}} }}
{{infocard/box |
{{infocard/heading| Bows }}
[[Hellwing Bow]], [[Phantasm]]
{{infocard/heading| Guns }}
[[Musket]], [[Shotgun]]
{{infocard/heading| Launchers }}
[[Rocket Launcher]], [[Grenade Launcher]]
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| class = compact
| text =
{{infocard/mainheading | Melee weapons | color = melee }}
{{infocard/box |
{{infocard/heading| Swords }}
[[Copper Shortsword]], [[Meowmere]]
{{infocard/heading| Spears }}
[[Trident]], [[Mushroom Spear]]
}}
{{infocard/mainheading | Ranged weapons | color = ranged | iconalt = {{transform|mirror=y|[[File:Vortex armor.png|x35px]]}} }}
{{infocard/box |
{{infocard/heading| Bows }}
[[Hellwing Bow]], [[Phantasm]]
{{infocard/heading| Guns }}
[[Musket]], [[Shotgun]]
{{infocard/heading| Launchers }}
[[Rocket Launcher]], [[Grenade Launcher]]
}}
}}
== Start and end ==
For more complex and convoluted infocards, it is not practical to pass content to the template via the <code>$text</code>/<code>$intro</code>/<code>$outro</code> parameters. These have the usual limitations of template parameters, like pipes (<code>|</code>) and equals signs (<code>=</code>) having to be escaped, the post-expand include size being increased, etc. To circumvent these limitations, use the subtemplates {{tl|infocard/start}} and {{tl|infocard/end}}. The start subtemplate has the exact same parameters as the normal {{tl|nl=y|infocard}} and the end subtemplate has no parameters. Thanks to {{(}}[[#Custom headings|infocard/mainheading]]{{)}} and {{(}}[[#Custom boxes|infocard/box]]{{)}}, it is still possible to use headings and boxes in an infocard transcluded like this.
The regular way to transclude an infobox as described above would be this:
<pre>
{{infocard
| name = Guide
| text = The first NPC encountered by the player.
}}
</pre>
With start and end templates, it would look like this:
<pre>
{{infocard/start}}
{{infobox/mainheading|Guide}}
The first NPC encountered by the player.
{{infocard/end}}
</pre>
The output is identical.
Similar subtemplates exist for {{(}}[[#Custom boxes|infocard/box]]{{)}}: {{tl|infocard/box/start}} and {{tl|infocard/box/end}}. They similarly allow a more convoluted setup of a box in an infocard.
== Options ==
{{options/autodoc|note_box-css=Default css for {{tl|infocard/box}}.}}
== Subpages ==
<div style="-webkit-column-count:3;column-count:3;">
{{#dpl:
|namespace=Template
|titlematch=Infocard/%
|notcategorymatch=% translation
|nottitlematch=%/doc%
|ordermethod=title
|columns=3
}}
</div>
<noinclude>
{{category|Template documentation}}
{{language info|en=Template:Infocard/doc}}
</noinclude>
2c2cb1b1e8f0721ec1df19bf83835b764c80fbc0
Template:Doc
10
90
432
431
2024-02-07T15:13:20Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
// localization info is autoloaded from Template:Doc/l10n
--><div class="documentation"><!--
--><div class="documentation_header"><!--
-->[[File:Template-{{#ifexist:Template:{{{1|{{PAGENAME}}}}}/{{l10n|doc|doc_subpage}}|{{#if:{{{baddoc|}}}|bad}}|no}}info.svg|50px|link=]] <!--
--><span style="font-weight: bold; font-size: 125%; margin-right: 10px;">{{l10n|doc|documentation}}</span> <!--
-->{{#ifeq:{{SUBPAGENAME}}|{{l10n|doc|doc_subpage}}|<!--nothing-->|<!--
-->{{#ifexist:Template:{{{1|{{PAGENAME}}}}}/{{l10n|doc|doc_subpage}}|<!--
--><span style="font-size: 90%; font-style: italic;"><!--
-->{{l10n|doc|text<!--
-->|$page$=[[{{ns:Template}}:{{ucfirst:{{{1|{{PAGENAME}}}}}}}/{{l10n|doc|doc_subpage}}]]<!--
-->|$edit$={{fullurl|{{FULLPAGENAMEE:Template:{{{1|{{PAGENAME}}}}}}}/{{l10n|doc|doc_subpage}}|action=edit|text={{l10n|doc|edit}}}}<!--
-->|$history$={{fullurl|{{FULLPAGENAMEE:Template:{{{1|{{PAGENAME}}}}}}}/{{l10n|doc|doc_subpage}}|action=history|text={{l10n|doc|history}}}}<!--
-->}}<!--
--></span><!--
-->}}<!--
-->}}<!--
--><div style="float: right; margin-left: 5px;"><!--
-->[{{fullurl|{{FULLPAGENAMEE}}|action=purge|text={{l10n|doc|purge}}}}]<!--
--></div><!--
--></div><!--
-->{{#if:{{l10n|doc|direct_to_en}}|{{dablink|{{l10n|doc|direct_to_en|$link_to_en$=[[:en:Template:{{PAGENAME}}|Template:{{PAGENAME}}]]}}}}}}<!-- leave line break here -->
<!--
-->{{#ifexist:Template:{{{1|{{PAGENAME}}}}}/{{l10n|doc|doc_subpage}}|<!--
-->{{#if:{{{baddoc|}}}|<!--
-->{{doc/baddoc message|issues={{{baddoc}}}}}<!--
-->{{Category|{{l10n|doc|cate_baddoc}}}}<!--
-->}}<!-- leave line break here -->
<!-- -->{{Template:{{{1|{{PAGENAME}}}}}/{{l10n|doc|doc_subpage}}|{{{1|}}}}}<!--
-->|<!--
-->{{l10n|doc|createdoc_text<!--
-->|$link$={{fullurl|{{FULLPAGENAMEE:Template:{{{1|{{PAGENAME}}}}}}}/{{l10n|doc|doc_subpage}}|action=edit|preload=Template:Doc/preload|text={{l10n|doc|createdoc_linktext}}}}<!--
-->}}<!--
-->{{Category|{{l10n|doc|cate_nodoc}}}}<!--
-->}}<!-- leave line break here -->
<!-- --><div style="margin: 15px 0 0 0"><!--
-->{{#ifeq:{{SUBPAGENAME}}|{{l10n|doc|doc_subpage}}|<!--
-->{{#ifeq:{{BASEPAGENAME}}|Doc|<!--nothing-->|<!-- only if page is not Template:Doc
-->{{l10n|doc|thisisdoc_text}}<!--
-->{{Category|{{l10n|doc|cate_doctemplates}}|{{BASEPAGENAME}}}}{{Category|{{l10n|doc|cate_baddoc}}}}<!--
-->}}<!--
-->}}<!--
--></div><!--
--></div><!--
--></includeonly><!--
--><noinclude>{{i18n-ready}}{{doc}}
{{category|Template documentation| }}
{{language info|en=Template:Doc}}
</noinclude>
7c4216044658c20334742e9592c2fddadb81759f
Template:Options/autodoc
10
91
434
433
2024-02-07T15:13:21Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
-->{{#vardefine:options_namespace|{{#or:{{{1|}}}|{{lcfirst:{{ROOTPAGENAME}}}}}}}}<!-- "Chance" for "Template:Chance/doc"
-->{{#vardefine:__FLAG_OPTIONS_AUTODOC__|yes}}<!--
-->{{#ifeq:{{NAMESPACENUMBER}}|10| {{ {{#var:options_namespace}}/initOptions}} }}<!-- autoload
-->{{#ifeq:{{SUBPAGENAME}}|initOptions||
This template supports options through {{tl|options}} template. All valid options are listed below, see {{tl|options}} for usage and other infomation.
See [[Template:{{#var:options_namespace}}/initOptions]] for the initial options setting of this template.
}}
<table class="wikitable"><!--
--><tr><th>Name</th><th>Alias</th><th>Initial Value</th><th>Value Mapping<ref>Values with mapping will be stored and loaded as mapped value. Other values without mapping will be stored and loaded as-is.</ref></th><th>Note</th></tr><!--
-->{{#arrayprint:optionsKeys:{{#var:options_namespace}}||@@@@|<!--
--><tr>{{#var:optionsDoc:@@@@}}</td><td>{{{note_@@@@|}}}</td></tr><!--
-->}}</table><!--
-->{{reflist}}<!--
--></includeonly><noinclude>
Used to auto gen document for options.
See {{tl|options}} for more info. See [[Template:Chance/doc]] for example.
{{language info|en=Template:Options/autodoc}}
</noinclude>
50851aea3140d88c92e4dc64b71803a242b76603
Achievements
0
56
435
359
2024-02-07T15:26:11Z
Lukkram
396381
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map. ( Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024 ) {{Infocard}}
<tabber>
|-|Danger Zone=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| 3-Pointer
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Shoot Hoops on Danger Zone
| style="width: 50%; text-align:center;"| 6.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| El Capitan
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Reach the Top of Danger Zone
| style="width: 50%; text-align:center;"| 8.3%
|}
<!-- ==================================================================================================================================== -->
|-|Race Island=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Best View In Town
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Land on the Lighthouse on Race Island
| style="width: 50%; text-align:center;"| 3.5%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Hot Air
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Crash into the blimp on Race Island
| style="width: 50%; text-align:center;"| 7.5%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Island Hopper
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Land in all the floating Islands <br>
above Race Island in one session
| style="width: 50%; text-align:center;"| 1.4%
|}
<!-- ==================================================================================================================================== -->
|-|Treasure Island=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Man In Black
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Fly through all the rings of <br>
fire in Treasure Island in one session
| style="width: 50%; text-align:center;"| 4.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Moby Dick
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Bumb into the whales in Treasure Island
| style="width: 50%; text-align:center;"| 3.4%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Monster!
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Drive over 8 chickens on <br>
Treasure Island in one session
| style="width: 50%; text-align:center;"| 10.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Pay your respect
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"|Visit the monument on Treasure Island
| style="width: 50%; text-align:center;"| 9.5%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px| Problem Solver
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Complete all the ball <br>
puzzles on Treasure Island
| style="width: 50%; text-align:center;"| 2.0%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Treehugger
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"|Hug the Tree on the Northeastern <br>
Island in Treasure Island
| style="width: 50%; text-align:center;"| 1.6%
|}
<!-- ==================================================================================================================================== -->
|-|Rally Mode=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Gold Rush
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Get gold on Downhill Rush
| style="width: 50%; text-align:center;"| 6.2%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Slide to Win
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"|Get gold on Sunny Slide
| style="width: 50%; text-align:center;"| 2.4%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| To Fly or Not To Fly
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Get gold on Cliff Land
| style="width: 50%; text-align:center;"| 2.4%
|}
<!-- ==================================================================================================================================== -->
|-|Stranded in Space=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Bring Marshmallows!
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Enter the volcano
| style="width: 50%; text-align:center;"| 15.4%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Power Core Collector
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Find 15 Power Cores in Stranded in Space
| style="width: 50%; text-align:center;"| 20.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Ready For Takeoff
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Rebuild your spaceship
| style="width: 50%; text-align:center;"| 9.2%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| So attractive!
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Pick up a piece of Salvage <br>
with the Tractor Beam
| style="width: 50%; text-align:center;"| 35.8%
|}
<!-- ==================================================================================================================================== -->
|-|Others=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Car Collector
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Download and load in a <br>
vehicle from the Workshop
| style="width: 50%; text-align:center;"| 51.9%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Leonardo da Vinci
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Stay airborne in a zero <br>
Power Core vehicle for 60 seconds
| style="width: 50%; text-align:center;"| 5.6%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Sharing is Caring
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Upload a vehicle to the Workshop
| style="width: 50%; text-align:center;"| 10.0%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Sonic Boom
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Break the sound barrier
| style="width: 50%; text-align:center;"| 29.2%
|}
</tabber>
a14f1ec6b45390d759ec6001dbfd19c337776ec9
436
435
2024-02-07T15:26:35Z
Lukkram
396381
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map. ( Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024 )
<tabber>
|-|Danger Zone=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| 3-Pointer
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Shoot Hoops on Danger Zone
| style="width: 50%; text-align:center;"| 6.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| El Capitan
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Reach the Top of Danger Zone
| style="width: 50%; text-align:center;"| 8.3%
|}
<!-- ==================================================================================================================================== -->
|-|Race Island=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Best View In Town
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Land on the Lighthouse on Race Island
| style="width: 50%; text-align:center;"| 3.5%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Hot Air
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Crash into the blimp on Race Island
| style="width: 50%; text-align:center;"| 7.5%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Island Hopper
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Land in all the floating Islands <br>
above Race Island in one session
| style="width: 50%; text-align:center;"| 1.4%
|}
<!-- ==================================================================================================================================== -->
|-|Treasure Island=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Man In Black
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Fly through all the rings of <br>
fire in Treasure Island in one session
| style="width: 50%; text-align:center;"| 4.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Moby Dick
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Bumb into the whales in Treasure Island
| style="width: 50%; text-align:center;"| 3.4%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Monster!
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Drive over 8 chickens on <br>
Treasure Island in one session
| style="width: 50%; text-align:center;"| 10.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Pay your respect
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"|Visit the monument on Treasure Island
| style="width: 50%; text-align:center;"| 9.5%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px| Problem Solver
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Complete all the ball <br>
puzzles on Treasure Island
| style="width: 50%; text-align:center;"| 2.0%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Treehugger
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"|Hug the Tree on the Northeastern <br>
Island in Treasure Island
| style="width: 50%; text-align:center;"| 1.6%
|}
<!-- ==================================================================================================================================== -->
|-|Rally Mode=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Gold Rush
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Get gold on Downhill Rush
| style="width: 50%; text-align:center;"| 6.2%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Slide to Win
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"|Get gold on Sunny Slide
| style="width: 50%; text-align:center;"| 2.4%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| To Fly or Not To Fly
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Get gold on Cliff Land
| style="width: 50%; text-align:center;"| 2.4%
|}
<!-- ==================================================================================================================================== -->
|-|Stranded in Space=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Bring Marshmallows!
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Enter the volcano
| style="width: 50%; text-align:center;"| 15.4%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Power Core Collector
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Find 15 Power Cores in Stranded in Space
| style="width: 50%; text-align:center;"| 20.1%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Ready For Takeoff
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Rebuild your spaceship
| style="width: 50%; text-align:center;"| 9.2%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| So attractive!
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Pick up a piece of Salvage <br>
with the Tractor Beam
| style="width: 50%; text-align:center;"| 35.8%
|}
<!-- ==================================================================================================================================== -->
|-|Others=
{| class="wikitable" style="margin-left: auto; margin-right: auto; width: 70%; border-style: solid; border-width: 0px"
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Car Collector
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Download and load in a <br>
vehicle from the Workshop
| style="width: 50%; text-align:center;"| 51.9%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Leonardo da Vinci
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Stay airborne in a zero <br>
Power Core vehicle for 60 seconds
| style="width: 50%; text-align:center;"| 5.6%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Sharing is Caring
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Upload a vehicle to the Workshop
| style="width: 50%; text-align:center;"| 10.0%
|-
| colspan="3" style="border-style: solid; border-width: 0px"|
|-
! colspan="2" style="border-style: solid; border-width: 1px 1px 3px 1px"| Sonic Boom
| rowspan="2" | image
|-
| style="width: 50%; text-align:center;"| Break the sound barrier
| style="width: 50%; text-align:center;"| 29.2%
|}
</tabber>
ea4a84c9ad143e33a12444b19579e293eb5f22e4
MediaWiki:Theme-definitions
8
93
438
2024-02-07T16:11:11Z
Lukkram
396381
Created page with "* none[default|bundled] * dark"
wikitext
text/x-wiki
* none[default|bundled]
* dark
dde6dd11b302e132ea01e5df2519d607d7924ed1
439
438
2024-02-17T04:24:32Z
Westgrass
40
wikitext
text/x-wiki
* light[default|bundled]
* dark[bundled]
22479ddebe42bf767cd3b0aafe871ac8c420a8ee
Main Page
0
1
440
360
2024-02-17T04:25:26Z
Westgrass
40
wikitext
text/x-wiki
<strong>MediaWiki has been installed.</strong>
Consult the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents User's Guide] for information on using the wiki software.
== Getting started ==
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Configuration settings list]
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ]
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Localise MediaWiki for your language]
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Learn how to combat spam on your wiki]
025c976aaef773d73e39c644832de4b98194a013
MediaWiki:Pagetitle
8
94
441
2024-02-17T04:28:44Z
Westgrass
40
init
wikitext
text/x-wiki
$1 - Official {{SITENAME}}
57033220011e307a12da880f313762b28dee374e
MediaWiki:Pagetitle-view-mainpage
8
95
442
2024-02-17T04:28:53Z
Westgrass
40
init
wikitext
text/x-wiki
Official {{SITENAME}}
c2d59ee45ea02d10b205a5d70873df285c4a3f46
MediaWiki:Copyright
8
5
443
5
2024-02-17T04:29:00Z
Westgrass
40
init
wikitext
text/x-wiki
<img src=https://commons.wiki.gg/images/f/ff/CC-BY-SA.svg /> Page content is under the <a href=https://creativecommons.org/licenses/by-sa/4.0>Creative Commons Attribution-ShareAlike 4.0 License</a> unless otherwise noted.
5e5a9edc3c58c2677e73e18e82ecf4c649528172
Template:License
10
96
444
2024-02-17T04:29:23Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div style="border: 1px solid var(--theme-border-accent) padding: 5px; display: flex;">
{{License/{{{1|nolicense}}}}}{{#if:{{{source|}}}|<div>Source: {{{source|}}}</div>}}
</div>
</includeonly>
<noinclude>{{documentation}}</noinclude>
c16a822de118666bde2231909baa3239c25e16b8
445
444
2024-02-17T04:29:27Z
Westgrass
40
Protected "[[Template:License]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div style="border: 1px solid var(--theme-border-accent) padding: 5px; display: flex;">
{{License/{{{1|nolicense}}}}}{{#if:{{{source|}}}|<div>Source: {{{source|}}}</div>}}
</div>
</includeonly>
<noinclude>{{documentation}}</noinclude>
c16a822de118666bde2231909baa3239c25e16b8
Template:License/CC-BY
10
97
446
2024-02-17T04:29:34Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY.svg|x50px|link=https://creativecommons.org/licenses/by/3.0/|CC-BY]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by/3.0/ Creative Commons Attribution 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
8069f8bb141c87273ec4101c1043b5ebda7f788f
447
446
2024-02-17T04:29:40Z
Westgrass
40
Protected "[[Template:License/CC-BY]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY.svg|x50px|link=https://creativecommons.org/licenses/by/3.0/|CC-BY]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by/3.0/ Creative Commons Attribution 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
8069f8bb141c87273ec4101c1043b5ebda7f788f
Template:License/CC-BY-NC
10
98
448
2024-02-17T04:29:53Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY-NC.svg|x50px|link=https://creativecommons.org/licenses/by-nc/3.0/|CC-BY-NC]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by-nc/3.0/ Creative Commons Attribution-NonCommercial 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
ea0a9e3d46ba08c4fc31750a92bd1000046c3b37
449
448
2024-02-17T04:29:58Z
Westgrass
40
Protected "[[Template:License/CC-BY-NC]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY-NC.svg|x50px|link=https://creativecommons.org/licenses/by-nc/3.0/|CC-BY-NC]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by-nc/3.0/ Creative Commons Attribution-NonCommercial 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
ea0a9e3d46ba08c4fc31750a92bd1000046c3b37
Template:License/CC-BY-NC-ND
10
99
450
2024-02-17T04:30:05Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY-NC-ND.svg|x50px|link=https://creativecommons.org/licenses/by-nc-nd/3.0/|CC-BY-NC-ND]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by-nc-nd/3.0/ Creative Commons Attribution-NonCommercial-NoDerivs 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
34141db8517bdc0dcec13dad55e1a4b76778b038
451
450
2024-02-17T04:30:10Z
Westgrass
40
Protected "[[Template:License/CC-BY-NC-ND]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY-NC-ND.svg|x50px|link=https://creativecommons.org/licenses/by-nc-nd/3.0/|CC-BY-NC-ND]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by-nc-nd/3.0/ Creative Commons Attribution-NonCommercial-NoDerivs 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
34141db8517bdc0dcec13dad55e1a4b76778b038
Template:License/CC-BY-NC-SA
10
100
452
2024-02-17T04:30:16Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY-NC-SA.svg|x50px|link=https://creativecommons.org/licenses/by-nc-sa/3.0/|CC-BY-NC-SA]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by-nc-sa/3.0/ Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
1b70c35de443490cae40bd3375108d2c0b931705
453
452
2024-02-17T04:30:20Z
Westgrass
40
Protected "[[Template:License/CC-BY-NC-SA]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY-NC-SA.svg|x50px|link=https://creativecommons.org/licenses/by-nc-sa/3.0/|CC-BY-NC-SA]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by-nc-sa/3.0/ Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
1b70c35de443490cae40bd3375108d2c0b931705
Template:License/CC-BY-ND
10
101
454
2024-02-17T04:30:26Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY-ND.svg|x50px|link=https://creativecommons.org/licenses/by-nd/3.0/|CC-BY-ND]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by-nd/3.0/ Creative Commons Attribution-NoDerivs 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
f9b4fa878dcfec21a01a7ce346c46eddf2f66f42
455
454
2024-02-17T04:30:29Z
Westgrass
40
Protected "[[Template:License/CC-BY-ND]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY-ND.svg|x50px|link=https://creativecommons.org/licenses/by-nd/3.0/|CC-BY-ND]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by-nd/3.0/ Creative Commons Attribution-NoDerivs 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
f9b4fa878dcfec21a01a7ce346c46eddf2f66f42
Template:License/CC-BY-SA
10
102
456
2024-02-17T04:30:35Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY-SA.svg|x50px|link=https://creativecommons.org/licenses/by-sa/3.0/|CC-BY-SA]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
9f75f45e0ceff1c07d2368f2ec75494cce86b567
457
456
2024-02-17T04:30:40Z
Westgrass
40
Protected "[[Template:License/CC-BY-SA]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-BY-SA.svg|x50px|link=https://creativecommons.org/licenses/by-sa/3.0/|CC-BY-SA]]</div>
<div>This file is under the [https://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
9f75f45e0ceff1c07d2368f2ec75494cce86b567
Template:License/CC-PD
10
103
458
2024-02-17T04:30:46Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-PD.svg|x50px|link=|Public Domain]]</div>
<div>This file has been released into the public domain by the copyright holder, its copyright has expired, or it is ineligible for copyright. This applies worldwide.</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
ffd7439180f2c581fc09906bc9f1714c0952a864
459
458
2024-02-17T04:30:50Z
Westgrass
40
Protected "[[Template:License/CC-PD]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-PD.svg|x50px|link=|Public Domain]]</div>
<div>This file has been released into the public domain by the copyright holder, its copyright has expired, or it is ineligible for copyright. This applies worldwide.</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
ffd7439180f2c581fc09906bc9f1714c0952a864
Template:License/CC-SRR
10
104
460
2024-02-17T04:30:56Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-SRR.svg|link=|CC-Some Rights Reserved]]</div>
<div>This file is under the Creative Commons Some Rights Reserved License.</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
cd49dbdaf1d4290117a115931288884ac9b62a46
461
460
2024-02-17T04:31:00Z
Westgrass
40
Protected "[[Template:License/CC-SRR]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-SRR.svg|link=|CC-Some Rights Reserved]]</div>
<div>This file is under the Creative Commons Some Rights Reserved License.</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
cd49dbdaf1d4290117a115931288884ac9b62a46
Template:License/CC0
10
105
462
2024-02-17T04:31:07Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-0.svg|x50px|link=https://creativecommons.org/publicdomain/zero/1.0/|CC0]]</div>
<div>This file is under the [https://creativecommons.org/publicdomain/zero/1.0/ CC0 1.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
f3fd76302622675395a422cf984a2f7ea93d151f
463
462
2024-02-17T04:31:11Z
Westgrass
40
Protected "[[Template:License/CC0]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:CC-0.svg|x50px|link=https://creativecommons.org/publicdomain/zero/1.0/|CC0]]</div>
<div>This file is under the [https://creativecommons.org/publicdomain/zero/1.0/ CC0 1.0 License].</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
f3fd76302622675395a422cf984a2f7ea93d151f
Template:License/Fairuse
10
106
464
2024-02-17T04:31:17Z
Westgrass
40
init
wikitext
text/x-wiki
#REDIRECT [[Template:License/fairuse]]
a42c85d61fbfdfbdfdaf2ff6f9b80994b2f6ddb3
465
464
2024-02-17T04:31:21Z
Westgrass
40
Protected "[[Template:License/Fairuse]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
#REDIRECT [[Template:License/fairuse]]
a42c85d61fbfdfbdfdaf2ff6f9b80994b2f6ddb3
Template:License/Flashbulb
10
107
466
2024-02-17T04:31:26Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:IN COPYRIGHT.svg|50px|link=https://rightsstatements.org/page/InC/1.0/?language=en|IN COPYRIGHT]]</div>
<div>This file is owned by Flashbulb and/or its licensors, and is licensed under the Flashbulb [[MediaWiki:Terms of Use|Terms of Use]].<br/>
All trademarks and registered trademarks present in the file are proprietary to Flashbulb and/or its licensors.
</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
cda59a53e6a8989970a38ed0728e8f0059293da8
467
466
2024-02-17T04:31:30Z
Westgrass
40
Protected "[[Template:License/Flashbulb]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:IN COPYRIGHT.svg|50px|link=https://rightsstatements.org/page/InC/1.0/?language=en|IN COPYRIGHT]]</div>
<div>This file is owned by Flashbulb and/or its licensors, and is licensed under the Flashbulb [[MediaWiki:Terms of Use|Terms of Use]].<br/>
All trademarks and registered trademarks present in the file are proprietary to Flashbulb and/or its licensors.
</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
cda59a53e6a8989970a38ed0728e8f0059293da8
Template:License/doc
10
108
468
2024-02-17T04:31:37Z
Westgrass
40
init
wikitext
text/x-wiki
This template is to be used in a Licensing heading on file pages to denote the file's license.
'''All acceptable first parameter examples:'''
<nowiki>{{License|Flashbulb}}</nowiki>
{{License|Flashbulb}}
<nowiki>{{License|Fairuse}}</nowiki>
{{License|Fairuse}}
<nowiki>{{License|CC0}}</nowiki>
{{License|CC0}}
<nowiki>{{License|CC-BY-NC-ND}}</nowiki>
{{License|CC-BY-NC-ND}}
<nowiki>{{License|CC-BY-NC-SA}}</nowiki>
{{License|CC-BY-NC-SA}}
<nowiki>{{License|CC-BY-NC}}</nowiki>
{{License|CC-BY-NC}}
<nowiki>{{License|CC-BY-ND}}</nowiki>
{{License|CC-BY-ND}}
<nowiki>{{License|CC-BY-SA}}</nowiki>
{{License|CC-BY-SA}}
<nowiki>{{License|CC-BY}}</nowiki>
{{License|CC-BY}}
<nowiki>{{License|CC-PD}}</nowiki>
{{License|CC-PD}}
<nowiki>{{License|CC-SRR}}</nowiki>
{{License|CC-SRR}}
'''Providing no parameter (or invalid one) defaults to the nolicense notice:'''
<nowiki>{{License}}</nowiki>{{License}}
'''Source parameter (optional):'''
The source parameter accepts a url to the source where the file came from if necessary for attribution.
Example:
<nowiki>{{License|Flashbulb|source=https://wiki.gg/}}</nowiki>
{{License|Flashbulb|source=https://wiki.gg/}}
<includeonly>
[[Category:License templates]]
</includeonly>
<noinclude>
[[Category:Template documentation]]
</noinclude>
ee8aa295b0220bb9b60fe2081025371b95b94f91
469
468
2024-02-17T04:31:43Z
Westgrass
40
Protected "[[Template:License/doc]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
This template is to be used in a Licensing heading on file pages to denote the file's license.
'''All acceptable first parameter examples:'''
<nowiki>{{License|Flashbulb}}</nowiki>
{{License|Flashbulb}}
<nowiki>{{License|Fairuse}}</nowiki>
{{License|Fairuse}}
<nowiki>{{License|CC0}}</nowiki>
{{License|CC0}}
<nowiki>{{License|CC-BY-NC-ND}}</nowiki>
{{License|CC-BY-NC-ND}}
<nowiki>{{License|CC-BY-NC-SA}}</nowiki>
{{License|CC-BY-NC-SA}}
<nowiki>{{License|CC-BY-NC}}</nowiki>
{{License|CC-BY-NC}}
<nowiki>{{License|CC-BY-ND}}</nowiki>
{{License|CC-BY-ND}}
<nowiki>{{License|CC-BY-SA}}</nowiki>
{{License|CC-BY-SA}}
<nowiki>{{License|CC-BY}}</nowiki>
{{License|CC-BY}}
<nowiki>{{License|CC-PD}}</nowiki>
{{License|CC-PD}}
<nowiki>{{License|CC-SRR}}</nowiki>
{{License|CC-SRR}}
'''Providing no parameter (or invalid one) defaults to the nolicense notice:'''
<nowiki>{{License}}</nowiki>{{License}}
'''Source parameter (optional):'''
The source parameter accepts a url to the source where the file came from if necessary for attribution.
Example:
<nowiki>{{License|Flashbulb|source=https://wiki.gg/}}</nowiki>
{{License|Flashbulb|source=https://wiki.gg/}}
<includeonly>
[[Category:License templates]]
</includeonly>
<noinclude>
[[Category:Template documentation]]
</noinclude>
ee8aa295b0220bb9b60fe2081025371b95b94f91
Template:License/fairuse
10
109
470
2024-02-17T04:31:51Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:IN COPYRIGHT.svg|50px|link=https://rightsstatements.org/page/InC/1.0/?language=en|IN COPYRIGHT]]</div>
<div>This file is copyrighted. It will be used in a way that qualifies as fair use under [https://en.wikipedia.org/wiki/Fair_use#Fair_use_under_United_States_law US copyright law].<br/>
</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
a65683c6dedb8a7e7a7cace39dfa957345d1325c
471
470
2024-02-17T04:31:56Z
Westgrass
40
Protected "[[Template:License/fairuse]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:IN COPYRIGHT.svg|50px|link=https://rightsstatements.org/page/InC/1.0/?language=en|IN COPYRIGHT]]</div>
<div>This file is copyrighted. It will be used in a way that qualifies as fair use under [https://en.wikipedia.org/wiki/Fair_use#Fair_use_under_United_States_law US copyright law].<br/>
</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
a65683c6dedb8a7e7a7cace39dfa957345d1325c
Template:License/nolicense
10
110
472
2024-02-17T04:32:02Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly>
<div>[[File:Warning-red.svg|50px|link=|No License has been selected.]]</div>
<div>Please select the proper License for this file by adding the proper parameter to <nowiki>{{License}}</nowiki>. See [[Template:License]] for details.</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
e5aed440bcde4a2d7633edef8640c90228fc24a6
473
472
2024-02-17T04:32:09Z
Westgrass
40
Protected "[[Template:License/nolicense]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<includeonly>
<div>[[File:Warning-red.svg|50px|link=|No License has been selected.]]</div>
<div>Please select the proper License for this file by adding the proper parameter to <nowiki>{{License}}</nowiki>. See [[Template:License]] for details.</div>
</includeonly>
<noinclude>{{documentation|Template:License/doc}}</noinclude>
e5aed440bcde4a2d7633edef8640c90228fc24a6
Category:Templates
14
111
474
2024-02-17T04:32:17Z
Westgrass
40
init
wikitext
text/x-wiki
[[Category:{{SITENAME}}]]
dd8aaa34cf600c1567d240a3f4bc615164a11592
Category:Trailmakers Wiki
14
112
475
2024-02-17T04:32:25Z
Westgrass
40
init
wikitext
text/x-wiki
This is the root category for everything on The {{SITENAME}}.
eaccd6ba79f8609ec20cb92a31a9468a40c7bfae
MediaWiki:Mainpage
8
113
476
2024-02-17T04:32:32Z
Westgrass
40
init
wikitext
text/x-wiki
{{SITENAME}}
3879910e8b355a24373fd09ccc909145b2639907
Trailmakers Wiki
0
45
477
315
2024-02-17T04:32:43Z
Westgrass
40
Protected "[[Trailmakers Wiki]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<!-- TO EDIT MAIN PAGE CONTENT, see "Templates used on this page" below and edit:
* {{SITENAME}}/Top section
* {{SITENAME}}/Flex section
* {{SITENAME}}/Bottom section
This is a basic responsive front page design that adapts to the available width of the browser by
rearranging the sections themselves as well as content within each section. When narrow, the three sections
line up vertically in a single column. When wide enough, the middle (flex) section is pulled out to become a
right column.
Much of the layout and appearance is determined through styles defined in these pages:
* MediaWiki:Common.css (for the desktop view)
* MediaWiki:Mobile.css (for the mobile view)
-->
<div id="fp-2column" class="fp-container">
<div id="fp-top" class="fp-section">
{{:{{SITENAME}}/Top section}}
</div>
<div id="fp-flex" class="fp-section">
{{:{{SITENAME}}/Flex section}}
</div>
<div id="fp-bottom" class="fp-section">
{{:{{SITENAME}}/Bottom section}}
</div>
</div>
<div class="nomobile" style="text-align: right; margin-right: 10px;"><small>Main page sections: [[{{SITENAME}}/Top section|Top]] · [[{{SITENAME}}/Flex section|Flex]] · [[{{SITENAME}}/Bottom section|Bottom]]. Changes for the main page can be proposed [[Talk:{{SITENAME}}|here]]. </small></div>
<metadesc>The official community maintained wiki resource for Trailmakers!</metadesc>
__NOTITLE__
[[Category:{{SITENAME}}| ]]
63dbdad7171c7cd3e29d7b777a7bb8a15d80f127
MediaWiki:Common.js
8
114
478
2024-02-17T04:32:48Z
Westgrass
40
init
javascript
text/javascript
mw.loader.getScript( 'https://commons.wiki.gg/index.php?title=MediaWiki:Common-base.js&action=raw&ctype=text/javascript' ).then(function(){
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/*end of mw.loader.getScript().then callback*/ });
$( document ).ready(function(){
$('<div class="menu-toggle"/>').insertAfter($('#p-logo')).on("click", function(event){
event.stopPropagation();
$(this).toggleClass('expanded');
});
});
f3480062877909e90f6ce04e0165722beccf949a
Template:InfoboxGame
10
115
479
2024-02-17T04:32:55Z
Westgrass
40
init
wikitext
text/x-wiki
<includeonly><infobox>
<title source="title">
<default>{{PAGENAME}}</default>
</title>
<image source="image">
<caption source="caption"/>
</image>
<data source="developer">
<label>Developer</label>
</data>
<data source="publisher">
<label>Publisher</label>
</data>
<data source="release">
<label>Release date</label>
</data>
<data source="platform">
<label>Platform</label>
</data>
</infobox></includeonly><noinclude>
Usage:<pre>
{{InfoboxGame
|title=
|image=
|caption=
|developer=
|publisher=
|release=
|platform=
}}
</pre>
[[Category:Infobox templates]]</noinclude>
ce818e81bba1bab2e1192621b9a8fd4fc7ebe332
Category:Infobox templates
14
116
480
2024-02-17T04:33:02Z
Westgrass
40
init
wikitext
text/x-wiki
[[Category:Templates]]
06eecdec29f6cb215c99cf216d1e3bdc8c30a95e
Template:Stub
10
9
481
43
2024-02-17T04:33:09Z
Westgrass
40
init
wikitext
text/x-wiki
<div class="hat-note" style="border: 1px solid #ff6666;padding: 0.5em;margin-bottom:1em">[[File:Edit-clear.svg|24px|link=]] This content is a [[:Category:Stubs|stub]]. You can help by [{{fullurl:{{FULLPAGENAME}}|action=edit}} expanding it]. </div>
<includeonly>{{{category|[[Category:Stubs]]}}}</includeonly><noinclude>
== Usage ==
<nowiki>{{stub}}</nowiki>
</noinclude>
0fb3c45d8b6db670390d02f9e2689d7a93caa423
Category:Stubs
14
117
482
2024-02-17T04:33:15Z
Westgrass
40
init
wikitext
text/x-wiki
[[Category:{{SITENAME}}]]
dd8aaa34cf600c1567d240a3f4bc615164a11592
File:Site-favicon.ico
6
118
483
2024-02-17T04:33:21Z
Westgrass
40
init
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
484
483
2024-02-17T04:33:26Z
Westgrass
40
Protected "[[File:Site-favicon.ico]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
507
484
2024-02-17T04:39:54Z
Westgrass
40
Westgrass uploaded [[File:Site-favicon.ico]]
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
File:Site-logo.png
6
119
485
2024-02-17T04:33:32Z
Westgrass
40
init
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
486
485
2024-02-17T04:33:52Z
Westgrass
40
Protected "[[File:Site-logo.png]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
509
486
2024-02-17T04:45:24Z
Westgrass
40
Westgrass uploaded [[File:Site-logo.png]]
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
File:Site-background.jpg
6
120
487
2024-02-17T04:34:01Z
Westgrass
40
init
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
488
487
2024-02-17T04:34:07Z
Westgrass
40
Protected "[[File:Site-background.jpg]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
512
488
2024-02-17T06:36:01Z
Westgrass
40
Westgrass uploaded [[File:Site-background.jpg]]
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
File:Keyart.jpg
6
121
489
2024-02-17T04:34:11Z
Westgrass
40
init
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
Category:Images
14
122
490
2024-02-17T04:34:17Z
Westgrass
40
init
wikitext
text/x-wiki
[[Category:Files]]
1f84c024fe622583c7d1508e23a1789fec0b4def
Category:Files
14
123
491
2024-02-17T04:34:23Z
Westgrass
40
init
wikitext
text/x-wiki
[[Category:{{SITENAME}}]]
dd8aaa34cf600c1567d240a3f4bc615164a11592
Trailmakers
0
44
492
310
2024-02-17T04:34:29Z
Westgrass
40
init
wikitext
text/x-wiki
{{stub}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
'''Trailmakers''' is a game.
[[Category:Trailmakers| ]]
b97604990f06cf87b8db2f3c719961e3d04fa43a
Category:Trailmakers
14
124
493
2024-02-17T04:34:38Z
Westgrass
40
init
wikitext
text/x-wiki
[[category:{{SITENAME}}]]
442656d773d97baea47f62cc8dcee3fda0f995ed
Category:Screenshots
14
125
494
2024-02-17T04:34:46Z
Westgrass
40
init
wikitext
text/x-wiki
[[Category:Images]]
8820b63e35aedd9d2666fe40b965d4e91ce0a106
MediaWiki:Gadgets-definition
8
126
495
2024-02-17T04:34:51Z
Westgrass
40
init
wikitext
text/x-wiki
== default-gadgets ==
* previewTab[ResourceLoader|default|dependencies=mediawiki.api|type=general]|previewTab.js|previewTab.css
* linkPurge[ResourceLoader|default|type=general]|linkPurge.js
* UserProfile[ResourceLoader|default|dependencies=mediawiki.api|rights=edit]|UserProfile.js|UserProfile.css
* multiupload[ResourceLoader|default]|multiupload.js
3186863480deb150cde83ce3d2d146cd5aa3b2bb
MediaWiki:Gadget-section-default-gadgets
8
127
496
2024-02-17T04:34:55Z
Westgrass
40
init
wikitext
text/x-wiki
Default Gadgets
6fc7468a16c085a721b999b2fb8835a90bdc4b5f
MediaWiki:Gadget-previewTab
8
128
497
2024-02-17T04:35:02Z
Westgrass
40
init
wikitext
text/x-wiki
Preview Tab: <abbr title="This gadget is enabled by default."><i>Default gadget</i></abbr>. Re-adds the Wikitext/Preview/Changes tabs to editor that were removed in the MediaWiki 1.31 upgrade.
74a761f21ba4349a91d6e2cc5b66a80dec16cd93
MediaWiki:Gadget-previewTab.js
8
129
498
2024-02-17T04:35:06Z
Westgrass
40
init
javascript
text/javascript
/* v1.2, By Westgrass https://terraria.wiki.gg/User:Westgrass */
$(document).ready(function (){
if(((mw.config.get('wgAction') != 'edit')&&(mw.config.get('wgAction') != 'submit'))||(mw.config.get('wgPageContentModel')) != 'wikitext'){
return;
}
//localization.
var $text_wikitext = {
'en': 'Wikitext',
'de': 'Wikitext',
'fr': 'Wikitexte',
'pt': 'Wikitexto',
'pt-br': 'Wikitexto',
'zh': '维基文本',
'zh-cn': '维基文本'
}
var $text_preview = {
'en': 'Preview',
'de': 'Vorschau',
'fr': 'Prévisualiser',
'pt': 'Antever',
'pt-br': 'Pré-visualizar',
'zh': '预览',
'zh-cn': '预览'
}
var $text_changes = {
'en': 'Changes',
'de': 'Änderungen',
'fr': 'Modifications',
'pt': 'Alteraçãos',
'pt-br': 'Alterações',
'zh': '差异',
'zh-cn': '差异'
}
var $text_nochanges = {
'en': 'No change',
'de': 'Keine Änderungen',
'fr': 'Aucune modification',
'pt': 'Nenhuma alteração',
'pt-br': 'Nenhuma alteração',
'zh': '无差异',
'zh-cn': '无差异'
}
$('#editform').before('<div id="wiki-editor-tabs"><div class="wikitext">'+($text_wikitext[mw.config.get( 'wgUserLanguage' )]||'Wikitext')+'</div><div class="preview">'+($text_preview[mw.config.get( 'wgUserLanguage' )]||'Preview')+'</div><div class="changes">'+($text_changes[mw.config.get( 'wgUserLanguage' )]||'Changes')+'</div></div>');
var $wikitext_button = $('#wiki-editor-tabs .wikitext').addClass('current');
var $preview_button = $('#wiki-editor-tabs .preview');
var $changes_button = $('#wiki-editor-tabs .changes');
$('#editform').before('<div id="wiki-editor-tabs-preview"><div class="sk-fading-circle"><div class="sk-circle1 sk-circle"></div><div class="sk-circle2 sk-circle"></div><div class="sk-circle3 sk-circle"></div><div class="sk-circle4 sk-circle"></div><div class="sk-circle5 sk-circle"></div><div class="sk-circle6 sk-circle"></div><div class="sk-circle7 sk-circle"></div><div class="sk-circle8 sk-circle"></div><div class="sk-circle9 sk-circle"></div><div class="sk-circle10 sk-circle"></div><div class="sk-circle11 sk-circle"></div><div class="sk-circle12 sk-circle"></div></div><div class="contents"></div></div><div id="wiki-editor-tabs-changes"><div class="sk-fading-circle"><div class="sk-circle1 sk-circle"></div><div class="sk-circle2 sk-circle"></div><div class="sk-circle3 sk-circle"></div><div class="sk-circle4 sk-circle"></div><div class="sk-circle5 sk-circle"></div><div class="sk-circle6 sk-circle"></div><div class="sk-circle7 sk-circle"></div><div class="sk-circle8 sk-circle"></div><div class="sk-circle9 sk-circle"></div><div class="sk-circle10 sk-circle"></div><div class="sk-circle11 sk-circle"></div><div class="sk-circle12 sk-circle"></div></div><div class="contents"></div></div>');
var $preview_loading = $('#wiki-editor-tabs-preview > div.sk-fading-circle').first();
var $preview_content = $('#wiki-editor-tabs-preview > div.contents').first();
var $changes_loading = $('#wiki-editor-tabs-changes > div.sk-fading-circle').first();
var $changes_content = $('#wiki-editor-tabs-changes > div.contents').first();
var $preview_api = new mediaWiki.Api();
var $changes_api = new mediaWiki.Api();
mw.loader.using( 'mediawiki.diff.styles' );
$wikitext_button.on('click', function(){
$preview_api.abort();
$changes_api.abort();
$('.wikiEditor-ui').css('display', 'block');
$('#wiki-editor-tabs-preview').css('display', 'none');
$('#wiki-editor-tabs-changes').css('display', 'none');
$wikitext_button.addClass('current');
$preview_button.removeClass('current');
$changes_button.removeClass('current');
$preview_loading.css('display', 'block');
$preview_content.empty();
$changes_loading.css('display', 'block');
$changes_content.empty();
});
$preview_button.on('click', function(){
$preview_api.abort();
$changes_api.abort();
$wikitext_button.removeClass('current');
$preview_button.addClass('current');
$changes_button.removeClass('current');
$preview_loading.css('display', 'block');
$preview_content.empty();
$changes_loading.css('display', 'block');
$changes_content.empty();
var $editor = $('.wikiEditor-ui');
$editor.css('display', 'none');
$('#wiki-editor-tabs-preview').css('display', 'block').outerHeight($editor.outerHeight());
$('#wiki-editor-tabs-changes').css('display', 'none');
var wikitext = $('#wpTextbox1').val();
$preview_api.post( {
formatversion: 2,
action: 'parse',
title: mw.config.get( 'wgPageName' ),
text: wikitext,
pst: '',
prop: 'text|modules|jsconfigvars',
preview: true,
disableeditsection: true,
useskin: mw.config.get( 'skin' ),
uselang: mw.config.get( 'wgUserLanguage' )
} ).done( function ( data ) {
var loadmodules, $content;
if ( !data.parse || !data.parse.text ) {
return;
}
if ( data.parse.jsconfigvars ) {
mw.config.set( data.parse.jsconfigvars );
}
loadmodules = data.parse.modules.concat(
data.parse.modulescripts,
data.parse.modulestyles
);
mw.loader.load( loadmodules );
$content = $preview_content
.detach()
.html( data.parse.text );
$content.append( '<div class="visualClear"></div>' )
.find( 'a:not([href^="#"])' )
.click( false );
$preview_loading.css('display', 'none');
$('#wiki-editor-tabs-preview').append( $content );
} );
});
$changes_button.on('click', function(){
$preview_api.abort();
$changes_api.abort();
$wikitext_button.removeClass('current');
$preview_button.removeClass('current');
$changes_button.addClass('current');
$preview_loading.css('display', 'block');
$preview_content.empty();
$changes_loading.css('display', 'block');
$changes_content.empty().html( '<table class="diff"><col class="diff-marker"/><col class="diff-content"/>' +
'<col class="diff-marker"/><col class="diff-content"/><tbody/></table>' );
var $editor = $('.wikiEditor-ui');
$editor.css('display', 'none');
$('#wiki-editor-tabs-preview').css('display', 'none');
$('#wiki-editor-tabs-changes').css('display', 'block').outerHeight($editor.outerHeight());
mw.loader.using( 'mediawiki.diff.styles' );
var wikitext = $('#wpTextbox1').val();
var section = $( '[name="wpSection"]' ).val();
var postdata = {
formatversion: 2,
action: 'query',
prop: 'revisions',
titles: mw.config.get( 'wgPageName' ),
rvdifftotext: wikitext,
rvdifftotextpst: true,
rvprop: '',
rvsection: section === '' ? undefined : section
};
$changes_api.post(postdata).done( function ( postResult ) {
var diff;
try {
diff = postResult.query.pages[ 0 ]
.revisions[ 0 ].diff.body;
if (diff){
$changes_content.find( 'table.diff tbody' )
.html( diff )
.append( '<div class="visualClear"></div>' );
}
else{
$changes_content.html( '<p style="text-align:center; font-style: italic;" class="note-text">('+($text_nochanges[mw.config.get( 'wgUserLanguage' )]||'No change')+')</p>' )
.append( '<div class="visualClear"></div>' );
}
$changes_loading.css('display', 'none');
} catch ( e ) {
// "data.blah is undefined" error, ignore
}
} );
});
});
d501df8885ff0d8741111b92c4090cd019961e93
MediaWiki:Gadget-linkPurge
8
130
499
2024-02-17T04:35:24Z
Westgrass
40
init
wikitext
text/x-wiki
Purge Link: <abbr title="This gadget is enabled by default."><i>Default gadget</i></abbr>. Adds a "Purge" link to the top of each page. When clicked, the server cache of the current page is cleared and refreshed.
4a25a321a8f17160dc4dafee99f56d7ba3ae4333
MediaWiki:Gadget-linkPurge.js
8
131
500
2024-02-17T04:35:29Z
Westgrass
40
init
javascript
text/javascript
var l10n = (function(){
var $text = {
'buttonlabel': {
'en': 'Purge',
'de': 'Aktualisieren',
'fr': 'Purger',
'ru': 'Обновить',
'pt': 'Actualizar',
'pt-br': 'Actualizar',
'zh': '刷新缓存'
},
'hovertext': {
'en': 'Purge the server cache for this page',
'de': 'Den Server-Cache dieser Seite löschen',
'fr': 'Purge le cache du serveur de cette page',
'ru': 'Очистить кэш сервера на этой странице',
'pt': 'Limpe o cache do servidor para esta página',
'pt-br': 'Limpe o cache do servidor para esta página',
'zh': '刷新此页面的服务器缓存'
}
}
var $lang = mw.config.get( 'wgUserLanguage' ) || 'en';
return function(key){
return $text[key] && ($text[key][$lang] || $text[key]['en']) || '';
}
})();
$(document).ready(function(){
var url = new URL(window.location.href);
url.searchParams.set('action', 'purge');
mw.util.addPortletLink('p-cactions', url.href, l10n('buttonlabel'), 'ca-gadget-purgecache', l10n('hovertext'), '1');
});
0f4d94767dd91f6b4a1a4c7f532b65748091aed7
MediaWiki:Gadget-UserProfile
8
132
501
2024-02-17T04:35:33Z
Westgrass
40
init
wikitext
text/x-wiki
Preview Tab: <abbr title="This gadget is enabled by default."><i>Default gadget</i></abbr>. Add some function to user profile page.
2fb4dab0a4aba6ee1256cb3dda11643f892e18c0
MediaWiki:Gadget-UserProfile.js
8
133
502
2024-02-17T04:35:36Z
Westgrass
40
init
javascript
text/javascript
mw.loader.using( [ 'mediawiki.api' ] ).done( function () {
var username = mw.config.get('wgRelevantUserName');
var lang = mw.language.bcp47(mw.config.get('wgUserLanguage'));
if ( username ) {
const allUsergroupsOrdered = [];
const dateOptions = {
year: "numeric",
month: "short",
day: "numeric",
hour: "2-digit",
minute: "2-digit",
timeZone: "UTC",
timeZoneName: "short"
};
var api = new mw.Api();
api.get( {
action: 'query',
list: 'users',
ususers: username,
usprop: [ 'groups', 'editcount', 'registration', 'blockinfo' ]
} ).done( function(data) {
var user = data.query.users[0];
user.groups.splice(user.groups.indexOf('*'), 1);
var groupList = user.groups.map( function(group) {
var grouppage = '{{MediaWiki:grouppage-'+group+'}}';
return [
'{{#ifexist: '+grouppage+' | [['+grouppage+'|{{int:group-'+group+'}}]] | {{int:group-'+group+'}} }}',
'{{#ifexist: '+grouppage+' | [['+grouppage+'|{{int:group-'+group+'-member|'+username+'}}]] | {{int:group-'+group+'-member|'+username+'}} }}'
];
} ).reduce( function(prev, cur) {
prev[0].push(cur[0]);
prev[1].push(cur[1]);
return prev;
}, [[], []] );
var text = '<div class="horse-userprofile-info">';
text += '\n\n<span>{{int:prefs-memberingroups|'+user.groups.length+'|'+username+'}}</span>\t<span>{{int:prefs-memberingroups-type|'+mw.language.listToText(groupList[0])+'|'+mw.language.listToText(groupList[1])+'}}</span>';
text += '\n\n<span>{{int:prefs-edits}}</span>\t<span>[[Special:Contribs/'+username+'|'+mw.language.convertNumber(user.editcount)+']]</span>';
text += '\n\n<span>{{int:prefs-registration}}</span>\t<span>'+mw.language.convertNumber(new Date(user.registration).toLocaleString(lang, dateOptions))+'</span>';
text += '\n\n</div>';
if ( user.blockid && mw.config.get('wgArticleId') !== 0 ) {
var blockDate = new Date(user.blockedtimestamp);
var blockexpiry = '{{int:infiniteblock}}';
if ( !['infinite', 'indefinite', 'infinity', 'never'].includes(user.blockexpiry) ) {
var expiry = new Date(user.blockexpiry.replace( /(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2,3})/, '$1-$2-$3T$4:$5:$6Z' ));
var duration = expiry - blockDate;
var blockDuration = [];
var factor = 1000;
if ( duration % factor === 0 ) blockDuration = ['duration-seconds', Math.floor(duration / factor)];
factor *= 60;
if ( duration % factor === 0 ) blockDuration = ['duration-minutes', Math.floor(duration / factor)];
factor *= 60;
if ( duration % factor === 0 ) blockDuration = ['duration-hours', Math.floor(duration / factor)];
factor *= 24;
if ( duration % factor === 0 ) blockDuration = ['duration-days', Math.floor(duration / factor)];
if ( duration % (factor*7) === 0 ) blockDuration = ['duration-weeks', Math.floor(duration / (factor*7))];
if ( duration % (factor*30) === 0 ) blockDuration = ['months', Math.floor(duration / (factor*30))];
factor *= 365;
if ( duration % factor === 0 ) blockDuration = ['duration-years', Math.floor(duration / factor)];
if ( duration % (factor*10) === 0 ) blockDuration = ['duration-decades', Math.floor(duration / (factor*10))];
if ( duration % (factor*100) === 0 ) blockDuration = ['duration-centuries', Math.floor(duration / (factor*100))];
if ( duration % (factor*1000) === 0 ) blockDuration = ['duration-millennia', Math.floor(duration / (factor*1000))];
if ( blockDuration.length < 2 || blockDuration[1] > 1000 ) blockexpiry = mw.language.convertNumber(expiry.toLocaleString(lang, dateOptions));
else blockexpiry = '{{int:'+blockDuration.join('|')+'}}';
}
text += '<div class="horse-userprofile-block mw-warning-with-logexcerpt"><div>\n{{int:blocked-notice-logextract|'+username+'}}\n';
text += '* '+mw.language.convertNumber(blockDate.toLocaleString(lang, dateOptions))+' {{int:logentry-block-block|[[User:'+user.blockedby+'|'+user.blockedby+']] <span class="mw-usertoollinks mw-changeslist-links"><span>[[User talk:'+user.blockedby+'|{{int:talkpagelinktext}}]]</span> <span>[[Special:Contribs/'+user.blockedby+'|{{int:contribslink}}]]</span></span>|'+user.blockedby+'|[[User:'+username+'|'+username+']] <span class="mw-usertoollinks mw-changeslist-links"><span>[[User talk:'+username+'|{{int:talkpagelinktext}}]]</span> <span>[[Special:Contribs/'+username+'|{{int:contribslink}}]]</span></span>|'+username+'|'+blockexpiry+'|}} <span class="comment">{{int:parentheses|'+user.blockreason+'}}</span></div></div>';
}
api.parse( text, {
disablelimitreport: true,
wrapoutputclass: 'horse-userprofile mw-message-box mw-content-'+$('#contentSub').attr('dir'),
uselang: mw.config.get('wgUserLanguage')
} ).done( function(parsedText) {
$('#contentSub').append(parsedText.replace( /\u29FCgroup-([^\u29FC\u29FD]+?)(?:-member)?\u29FD/g, '$1' ));
} );
} );
}
} );
ce7d71d15f0855c5ffc2a2aead36e99da7cd64e2
MediaWiki:Gadget-UserProfile.css
8
134
503
2024-02-17T04:35:41Z
Westgrass
40
init
css
text/css
#contentSub > * + .horse-userprofile {
margin-top: 1em;
}
.horse-userprofile {
font-size: var(--font-size);
color: var(--theme-text-color);
padding: 6px 12px;
}
.horse-userprofile-info span:first-of-type {
font-weight: bold;
}
57f9280a5451e127405bcc5b42272996a2bf94b8
MediaWiki:Gadget-multiupload
8
135
504
2024-02-17T04:35:45Z
Westgrass
40
init
wikitext
text/x-wiki
Allows multiple file upload through [[Special:Upload]]
c18d8757cec3234759babf2850b02905a6a4bdaa
MediaWiki:Gadget-multiupload.js
8
136
505
2024-02-17T04:35:50Z
Westgrass
40
init
javascript
text/javascript
mw.loader.using(['site']).then(function() {
i18n = {
multiupload: "Upload multiple files:",
yes: "Yes",
no: "No",
sourcefiles: "Source files:",
uploadfiles: "Upload files",
nofiles: "Please select some files first.",
nolicense: "Please select a valid license first.",
summary: "Summary",
license: "License",
uploading: "Uploading files...",
uploaded: "Uploaded:",
failed: "Failed:",
done: "Done."
};
if (mw.config.get("wgCanonicalSpecialPageName")!=="Upload") return;
$("#wpUploadFile").parent().parent().addClass("regularFileSelect");
$("tr.regularFileSelect").before('<tr><td class="mw-label">'+i18n.multiupload+'</td><td class="mw-input"><label><input type="radio" name="multipleFiles" value="'+i18n.yes+'" /> '+i18n.yes+'</label> <label><input type="radio" name="multipleFiles" value="'+i18n.no+'" checked="" /> '+i18n.no+'</label></td></tr>');
$("tr.regularFileSelect").after('<tr class="multipleFileSelect" style="display:none;"><td class="mw-label">'+i18n.sourcefiles+'</td><td class="mw-input"><input type="file" id="multiupload" multiple /></td></tr>');
$("input[name='wpUpload']").addClass("regularFileSelect");
$("#wpDestFile").parent().parent().addClass("regularFileSelect");
$("#wpIgnoreWarning").parent().parent().addClass("regularFileSelect");
$("span.mw-htmlform-submit-buttons").append('<input type="button" value="'+i18n.uploadfiles+'" class="multipleFileSelect" style="display:none;" id="multiFileSubmit" />');
$("input[name='multipleFiles']").change(function(){
if (this.value===i18n.yes) {
$(".regularFileSelect").hide();
$(".multipleFileSelect").show();
}
else {
$(".regularFileSelect").show();
$(".multipleFileSelect").hide();
}
});
$("#multiFileSubmit").click(function() {
files = $("#multiupload")[0].files;
if (files.length === 0) {
alert(i18n.nofiles);
return false;
}
if ($("#wpLicense option:selected").val() === "") {
alert(i18n.nolicense);
return false;
}
summary = $("#wpUploadDescription").val();
if (summary !== "") summary = "== "+i18n.summary+" ==\n"+summary;
license = "== "+i18n.license+" ==\n"+$("#wpLicense option:selected").prop("title");
text = summary + "\n" + license;
watch = "preferences";
if ($("#wpWatchthis").is(":checked")) watch = "watch";
else watch = "nochange";
curFile = 0;
$("#firstHeading").text(i18n.uploading);
$("#mw-content-text").html("<h3>"+i18n.uploaded+"</h3><ul></ul><div style='display:none;' id='multiUploadFailed'><h3>"+i18n.failed+"</h3><ul></ul></div>");
function gNF() {
if(curFile>files.length) {
$("#mw-content-text").append("<h3>"+i18n.done+"</h3>");
return;
}
if(files[curFile] === undefined) {
curFile++;
gNF();
return;
}
$.ajax({url:'/api.php',data:{action:'query',meta:'tokens',format:'json'},dataType:'json'}).done(function(data) {
fd = new FormData();
fd.append("action","upload");
fd.append("token",data.query.tokens.csrftoken);
fd.append("filename",files[curFile].name);
fd.append("file",files[curFile]);
fd.append("text",text);
fd.append("watchlist",watch);
fd.append("ignorewarnings",1);
fd.append("format","json");
$.ajax({
url:'/api.php',
method:'POST',
data:fd,
cache:false,
contentType:false,
processData:false,
type:'POST'
}).done(function(d){
if (d.error == undefined) {
$("#mw-content-text > ul").append('<li><a href="'+d.upload.imageinfo.descriptionurl+'" target="_blank">'+d.upload.filename+'</a></li>');
}
else {
$("#multiUploadFailed ul").append('<li>'+files[curFile].name+'</li>');
$("#multiUploadFailed").show();
}
curFile++;
gNF();
}).fail(function(d) {
$("#multiUploadFailed ul").append('<li>'+files[curFile].name+'</li>');
$("#multiUploadFailed").show();
curFile++;
gNF();
});
});
}
gNF();
});
});
bbee7e49b69c0291c720b7adb6ca3d7d45672384
MediaWiki:Common.css
8
137
506
2024-02-17T04:39:41Z
Westgrass
40
Created page with "/*********************************************************************************************************** * css reset for browser default rules and MediaWiki internal rules ***********************************************************************************************************/ * { outline: 0; } table { white-space: unset; /* be set to `no-wrap` in MW internal css */ } html { font-size: 16px; /* reset rem size */ } body { overflow-y: unset; } pre {..."
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: none;
--theme-site-logo-width: 480px;
--theme-site-logo-height: 104px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 4px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #511e00;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0.75);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #9d9d9d;
--theme-text-color-em: #0c742f;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #088488;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: none;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: none;
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 1;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: auto;
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: var(--layout-box-gap);
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
7172cec90c8cc6b9b573f7f110b388ff676e11f7
511
506
2024-02-17T05:57:06Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: none;
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 4px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #511e00;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0.75);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #9d9d9d;
--theme-text-color-em: #0c742f;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #088488;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: none;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: none;
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.75;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: auto;
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: var(--layout-box-gap);
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
8f4c2ccd80570c750dce66d051281dc7e782d85f
513
511
2024-02-17T06:36:33Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: none;
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 4px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #511e00;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0.75);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #9d9d9d;
--theme-text-color-em: #0c742f;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #088488;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: none;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: none;
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.75;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: auto;
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: var(--layout-box-gap);
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
05dff0ace1cb22bf1f379cb28c0bb0a67453627d
514
513
2024-02-17T06:38:55Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: none;
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 4px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #511e00;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0.75);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #9d9d9d;
--theme-text-color-em: #0c742f;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #088488;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: none;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: none;
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.75;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
6645343fac2a6e24195b8f78d85aeacedcb5b750
515
514
2024-02-17T06:40:12Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: none;
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 4px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #511e00;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0.75);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #9d9d9d;
--theme-text-color-em: #0c742f;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #088488;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: none;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: none;
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
76cacddf7413f1c717625751820ea4c5fd837ef4
516
515
2024-02-17T06:41:42Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.3));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 4px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #511e00;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0.75);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #9d9d9d;
--theme-text-color-em: #0c742f;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #088488;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: none;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: none;
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
74d199b4b8f1128ad2fc5f77666d269f4e66185c
517
516
2024-02-17T06:42:08Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 4px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #511e00;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0.75);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #9d9d9d;
--theme-text-color-em: #0c742f;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #088488;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: none;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: none;
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
5fdab19b2886f2404645eb67a808e333033806de
518
517
2024-02-17T06:44:55Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 4px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #ffd500;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0.75);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: #ffd500;
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0094e4;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: none;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: none;
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
f6b172d0934eb0d6c7e177e232d34364eb4a571b
519
518
2024-02-17T06:45:59Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #ffd500;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0.75);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: #ffd500;
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: none;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: none;
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
40da22bc848f3eae1c3ac305eba41cf3836d788e
MediaWiki:Sidebar
8
138
508
2024-02-17T04:42:07Z
Westgrass
40
Created page with " * navigation ** mainpage|mainpage-description ** recentchanges-url|recentchanges ** randompage-url|randompage * Links ** https://playtrailmakers.com/ | Website ** https://store.steampowered.com/app/585420/Trailmakers/ | Steam page * SEARCH * TOOLBOX * LANGUAGES"
wikitext
text/x-wiki
* navigation
** mainpage|mainpage-description
** recentchanges-url|recentchanges
** randompage-url|randompage
* Links
** https://playtrailmakers.com/ | Website
** https://store.steampowered.com/app/585420/Trailmakers/ | Steam page
* SEARCH
* TOOLBOX
* LANGUAGES
f4a6e17f7d3a73a001b0736de9c140baa65f7ff9
MediaWiki:Gadget-previewTab.css
8
139
510
2024-02-17T04:55:35Z
Westgrass
40
init
css
text/css
#wiki-editor-tabs{
z-index: 10;
position: relative;
clear: both;
}
#wiki-editor-tabs div{
background: var(--theme-page-background-color--secondary);
border: 1px solid var(--theme-border-color);
padding: 0.5em 1em;
display: inline-block;
cursor: pointer;
margin-right: -1px;
margin-bottom: -1px;
color: var(--theme-link-color);
}
#wiki-editor-tabs div.current{
background: var(--theme-page-background-color);
border-bottom-color: var(--theme-page-background-color);
color: var(--theme-page-text-color);
}
#wiki-editor-tabs-preview,#wiki-editor-tabs-changes{
border: 1px solid var(--theme-border-color);
padding: 1em;
z-index: 1;
overflow: auto;
display: none;
}
#editform{
z-index: 1;
}
/* from SpinKit: http://tobiasahlin.com/spinkit/ */
.sk-fading-circle {
margin: 100px auto;
width: 40px;
height: 40px;
position: relative;
}
.sk-fading-circle .sk-circle {
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
}
.sk-fading-circle .sk-circle:before {
content: '';
display: block;
margin: 0 auto;
width: 15%;
height: 15%;
background-color: var(--theme-page-text-color);
border-radius: 100%;
-webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
}
.sk-fading-circle .sk-circle2 {
-webkit-transform: rotate(30deg);
-ms-transform: rotate(30deg);
transform: rotate(30deg);
}
.sk-fading-circle .sk-circle3 {
-webkit-transform: rotate(60deg);
-ms-transform: rotate(60deg);
transform: rotate(60deg);
}
.sk-fading-circle .sk-circle4 {
-webkit-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
}
.sk-fading-circle .sk-circle5 {
-webkit-transform: rotate(120deg);
-ms-transform: rotate(120deg);
transform: rotate(120deg);
}
.sk-fading-circle .sk-circle6 {
-webkit-transform: rotate(150deg);
-ms-transform: rotate(150deg);
transform: rotate(150deg);
}
.sk-fading-circle .sk-circle7 {
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
transform: rotate(180deg);
}
.sk-fading-circle .sk-circle8 {
-webkit-transform: rotate(210deg);
-ms-transform: rotate(210deg);
transform: rotate(210deg);
}
.sk-fading-circle .sk-circle9 {
-webkit-transform: rotate(240deg);
-ms-transform: rotate(240deg);
transform: rotate(240deg);
}
.sk-fading-circle .sk-circle10 {
-webkit-transform: rotate(270deg);
-ms-transform: rotate(270deg);
transform: rotate(270deg);
}
.sk-fading-circle .sk-circle11 {
-webkit-transform: rotate(300deg);
-ms-transform: rotate(300deg);
transform: rotate(300deg);
}
.sk-fading-circle .sk-circle12 {
-webkit-transform: rotate(330deg);
-ms-transform: rotate(330deg);
transform: rotate(330deg);
}
.sk-fading-circle .sk-circle2:before {
-webkit-animation-delay: -1.1s;
animation-delay: -1.1s;
}
.sk-fading-circle .sk-circle3:before {
-webkit-animation-delay: -1s;
animation-delay: -1s;
}
.sk-fading-circle .sk-circle4:before {
-webkit-animation-delay: -0.9s;
animation-delay: -0.9s;
}
.sk-fading-circle .sk-circle5:before {
-webkit-animation-delay: -0.8s;
animation-delay: -0.8s;
}
.sk-fading-circle .sk-circle6:before {
-webkit-animation-delay: -0.7s;
animation-delay: -0.7s;
}
.sk-fading-circle .sk-circle7:before {
-webkit-animation-delay: -0.6s;
animation-delay: -0.6s;
}
.sk-fading-circle .sk-circle8:before {
-webkit-animation-delay: -0.5s;
animation-delay: -0.5s;
}
.sk-fading-circle .sk-circle9:before {
-webkit-animation-delay: -0.4s;
animation-delay: -0.4s;
}
.sk-fading-circle .sk-circle10:before {
-webkit-animation-delay: -0.3s;
animation-delay: -0.3s;
}
.sk-fading-circle .sk-circle11:before {
-webkit-animation-delay: -0.2s;
animation-delay: -0.2s;
}
.sk-fading-circle .sk-circle12:before {
-webkit-animation-delay: -0.1s;
animation-delay: -0.1s;
}
@-webkit-keyframes sk-circleFadeDelay {
0%, 39%, 100% { opacity: 0; }
40% { opacity: 1; }
}
@keyframes sk-circleFadeDelay {
0%, 39%, 100% { opacity: 0; }
40% { opacity: 1; }
}
311c19f960153e080b7e390acc9dc9a5d16d6a9e
MediaWiki:Common.css
8
137
520
519
2024-02-17T06:46:26Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #ffd500;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0.75);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: none;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: none;
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
a8189169b9c96c593acea2569ee12e1836fb47c7
521
520
2024-02-17T06:48:33Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #ffd500;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.85),rgba(255,255,255,0.85));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
a5743495c3ee6cdfdb1f2fad190fcc5fb821f721
522
521
2024-02-17T06:50:05Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #ffd500;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.92),rgba(255,255,255,0.92));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
413955e57316640551e639636094a80fe6e3b489
523
522
2024-02-17T06:52:18Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #ffd500;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.92),rgba(255,255,255,0.92));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 2px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
d0f98d96a32187da0af7be51ccab48944b120ad6
524
523
2024-02-17T06:54:22Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: rgb(255,128,0);
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.92),rgba(255,255,255,0.92));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 2px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
305ef3607d2a95af5ef92af2d7acb9eaaee87a5a
525
524
2024-02-17T06:55:25Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.92),rgba(255,255,255,0.92));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
4333c30d3c88a12a299576ac38da4920daf92585
526
525
2024-02-17T06:56:14Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.92),rgba(255,255,255,0.92));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
92d35e2c88faacf7e0b983210e6fe9409a5ffeaf
527
526
2024-02-17T06:57:03Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.92),rgba(255,255,255,0.92));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
d7fb723f6b3de415badeeccd5cd2075e9bd95f04
528
527
2024-02-17T06:57:47Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.92),rgba(255,255,255,0.92));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 3px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
d672d673614e85b7560f072c6e356dc9d5f32fb8
529
528
2024-02-17T06:58:53Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.92),rgba(255,255,255,0.92));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
a33c9b88b4025735813aa991418e49afd64c2881
530
529
2024-02-17T06:59:40Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
f9fc5fb557913ec8ad3d3cb97e6d6f06e844cebd
531
530
2024-02-17T07:00:32Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: linear-gradient(to top, rgba(0,0,0,0.05), transparent 6px);
--theme-tab-background: var(--theme-box-background);
--theme-tab-background-selected: var(--theme-box-background);
--theme-tab-color-selected: var(--theme-text-color);
--theme-tab-color-selected-hover: var(--theme-tab-color-selected);
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 6);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
4f1fd5a7f3d2d2daef302cc322d7a0dd535bb80f
532
531
2024-02-17T07:01:36Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #fff;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 6);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
f8c9081ae8cb57b722d36ca190955c0d6a7f4c11
533
532
2024-02-17T07:03:21Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: var(--theme-box-border-color);
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 6);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
4a388947f53eb072c2a0cc150094586f45c3faa8
534
533
2024-02-17T07:04:27Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(97, 30, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 6);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
115fe8953b9e944aaf10d0766dbb70d0c70085fa
535
534
2024-02-17T07:05:32Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 6);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
fc607a31d76bfb1efda238e3d2d88fb77f2ef7d3
536
535
2024-02-17T07:07:42Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: #ffd500;
--theme-border-bottom-width: 0;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 1px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
6916bcfe7388ff9f37338897baee98971cd72137
537
536
2024-02-17T07:08:48Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 1px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 0px;
--theme-border-bottom-color: var(--theme-tab-border-color-selected);
--theme-border-bottom-color-selected: transparent;
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
a6848ce2b7a563cfe9c4ed43c14ee57b79d347e1
538
537
2024-02-17T07:09:34Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
c0ac91d6bb69cc3856f367b345c2b18767aac276
539
538
2024-02-17T07:10:53Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
91d25dd2849bf9d122d3398e5348ebc3f73b4cd1
540
539
2024-02-17T07:12:18Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #12011c url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
5029a1c5c80862af17d59ce8fa53b98f7c91b6f9
541
540
2024-02-17T07:15:24Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-border-width: 0;
--theme-gap: 0;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
background: rgba(15, 15, 15, 0.8);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
efd472c92d0eb1b5b487a393f251dd4403f62228
542
541
2024-02-17T07:17:14Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 1px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 0;
--theme-gap: 0;
--theme-background: rgba(15,15,15,.8);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
0242befac60fe7ffcbba0e69af9eaefdd8b882a1
543
542
2024-02-17T07:17:58Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 0;
--theme-gap: 0;
--theme-background: rgba(15,15,15,.8);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-background), var(--theme-box-back-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
898fa094f18f4529fedd7dabd3cae2283d1e248d
544
543
2024-02-17T07:19:52Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 0;
--theme-gap: 0;
--theme-background: rgba(15,15,15,.8);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
268fe450253a74115b5438530a921da17053407f
545
544
2024-02-17T07:24:22Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 0;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15,15,15,.8);
--theme-heading-color: #ffd500;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
677cfb2d6befc77a76098323ede5423373e04678
546
545
2024-02-17T07:25:22Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15,15,15,.8);
--theme-heading-color: #ffd500;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
f9a7e7b5aa1d4349ea6dc4ea3a41f0eb3451faf3
547
546
2024-02-17T07:27:00Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
520f643d42539ddf9c5cc0acc11265afcfa2e26f
548
547
2024-02-17T07:28:24Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: var(--layout-padding) 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
ae8a6c55afcf80ca23c49440d2030934ea175d9c
549
548
2024-02-17T07:30:01Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.15);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
d4577d96cf31b526b18a0b008f7a680d3ab15c21
550
549
2024-02-17T07:31:10Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.75;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
8cd15da7afd47ebc82b75099091817686df611e9
551
550
2024-02-17T07:31:39Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.25;
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
e4f4abc67758a6fd919e1067c61eaef3c0e65c7b
552
551
2024-02-17T07:32:57Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
cbae874327aa57fd9dc5187cb763a71331cca68c
553
552
2024-02-17T07:33:53Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
5644918970192e3303468585e3aa78298b2eadf5
554
553
2024-02-17T07:34:07Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
:root {
--layout-logo-scale: 0.5;
}
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
c0ec39730c5b760cd6ff48311331b8606e3b8235
555
554
2024-02-17T07:36:21Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
f1ff98c3c2ae6156241316d44034b04e47e4b7cf
557
555
2024-02-17T07:40:09Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.1);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.92), rgba(20, 44, 60, 0.92));
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
5bf0453401f40f9e3f68b437b40934f63692486a
558
557
2024-02-17T07:42:22Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.92), rgba(20, 44, 60, 0.92));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
61167d90950793a1d75e4c9a84f18a94a07b6f30
559
558
2024-02-17T07:43:08Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.95), rgba(20, 44, 60, 0.95));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
44f53eeebee2265115d4845f9dc9d4b3872a192d
560
559
2024-02-17T07:43:37Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.97), rgba(20, 44, 60, 0.97));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffdd7a;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.feature {
font-size: 18px;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature {
font-size: 16px;
}
}
#mainpage-wrap .box.feature ul {
margin: 0.5em 0;
display: grid;
grid-template-columns: repeat(3, 1fr);
list-style: none;
justify-items: start;
gap: 1em 1.5em;
}
@media (max-width: 600px) {
#mainpage-wrap .box.feature ul {
gap: 8px;
}
}
#mainpage-wrap .box.gallery ul {
display: flex;
flex-wrap: wrap;
gap: 0.5em;
margin: 0;
}
#mainpage-wrap .box.gallery ul li {
flex: 1 1 40%;
list-style: none;
}
@media (max-width: 1200px) and (min-width: 720px) {
#mainpage-wrap .box.gallery ul li {
flex: 1 1 22%;
}
}
#mainpage-wrap .box.gallery ul li img {
width: 100%;
height: auto;
}
#mainpage-wrap .box.gallery img {
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
50966f7c6e0fd0574039f7cd6b73eb3d7d0225bf
569
560
2024-02-17T09:08:59Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #C3A300FF;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.97), rgba(20, 44, 60, 0.97));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffd500;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.quicklinks {
font-size: 18px;
}
#mainpage-wrap .box.quicklinks .content {
display: flex;
gap: 1em;
flex-wrap: wrap;
}
#mainpage-wrap .box.quicklinks .content > div {
padding: 1em;
border: 1px solid var(--theme-border-color-accent);
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
6f9cf25e62e788ad7122e37a2354dfe1b618e6cc
File:Site-background-dark.jpg
6
140
556
2024-02-17T07:38:22Z
Westgrass
40
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Trailmakers Wiki
0
45
561
477
2024-02-17T08:57:29Z
Westgrass
40
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides</h2><!--
-->
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
<!--
--></div><!--
--></div><!--
--><div class="box images"><!--
--><h2>Featured images</h2><!--
-->{{Featured images}}<!--
--></div><!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#desc2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
fc430989c22cfade5a0d9d49b9c00e7bf844a0d8
562
561
2024-02-17T08:58:46Z
Westgrass
40
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides</h2><!--
-->
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
<!--
--></div><!--
--></div><!--
--><div class="box images"><!--
--><h2>Featured images</h2><!--
-->{{Featured images}}<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#desc2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
3339faa5977dec7a6ac30aee2737970b36c6f4f6
563
562
2024-02-17T08:59:23Z
Westgrass
40
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides</h2><!--
-->
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
<!--
--></div><!--
--><div class="box images"><!--
--><h2>Featured images</h2><!--
-->{{Featured images}}<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#desc2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
99594b6c5f7683d06abc331ac2aeaaf910940d82
565
563
2024-02-17T09:02:55Z
Westgrass
40
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides</h2><!--
-->
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
<!--
--></div><!--
--><div class="box images"><!--
--><h2>Featured images</h2><!--
-->{{Featured images}}<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
-->
* {{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}
* {{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}
* {{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}
* {{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}
* {{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}
* {{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}
<!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#desc2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
5bb7d4340632af8b444d645f9daaaddff4f08957
566
565
2024-02-17T09:04:28Z
Westgrass
40
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides</h2><!--
-->
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
<!--
--></div><!--
--><div class="box images"><!--
--><h2>Featured images</h2><!--
-->{{Featured images}}<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#desc2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
99594b6c5f7683d06abc331ac2aeaaf910940d82
568
566
2024-02-17T09:06:33Z
Westgrass
40
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides</h2><!--
-->
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
<!--
--></div><!--
--><div class="box images"><!--
--><h2>Featured images</h2><!--
-->{{Featured images}}<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#description2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
38fb330c523f49570f8934d5e1fd767d8dac9b8e
File:Keyart.jpg
6
121
564
489
2024-02-17T09:01:44Z
Westgrass
40
Westgrass uploaded [[File:Keyart.jpg]]
wikitext
text/x-wiki
{{license|Flashbulb}}
[[Category:Images]]
b9a41d0570a894cfda7d1a1540f64e4989252724
MediaWiki:Theme-definitions
8
93
567
439
2024-02-17T09:04:49Z
Westgrass
40
wikitext
text/x-wiki
* light[bundled]
* dark[default|bundled]
da1d3bf171c56977dc07c3d350848a3f893e687c
MediaWiki:Common.js
8
114
570
478
2024-02-17T09:11:30Z
Westgrass
40
javascript
text/javascript
mw.loader.getScript( 'https://commons.wiki.gg/index.php?title=MediaWiki:Common-base.js&action=raw&ctype=text/javascript' ).then(function(){
////////////////////////////////////////////////////////////////////////////////
/**
* main page slider
*/
$(function(){
$('#content .slider').each(function(){
var $box = $(this);
var width = $box.width();
$prev = $('<div class="prev"/>').appendTo($box);
$next = $('<div class="next"/>').appendTo($box);
$box = $box.find('ul').first();
var $current = $box.find('li').first();
$box.find('li').each(function(index){
var $this = $(this);
$this.data('left', width*index);
$this.css('left', width*index+'px');
$this.css('background-image', 'url('+$this.find('img').first().attr('src')+')');
});
var timeout;
var switchTo = function($item){
$box.css('transform', 'translateX(-'+$item.data('left')+'px)');
}
var goNext = function(){
clearTimeout(timeout);
$current = $current.next('li');
if($current.length === 0){
$current = $box.find('li').first();
}
switchTo($current);
timeout = setTimeout(goNext, 5000);
};
var goPrev = function(){
clearTimeout(timeout);
$current = $current.prev('li');
if($current.length === 0){
$current = $box.find('li').last();
}
switchTo($current);
timeout = setTimeout(goNext, 5000);
};
timeout = setTimeout(goNext, 5000);
$prev.on('click', goPrev);
$next.on('click', goNext);
});
});
////////////////////////////////////////////////////////////////////////////////
/*end of mw.loader.getScript().then callback*/ });
$( document ).ready(function(){
$('<div class="menu-toggle"/>').insertAfter($('#p-logo')).on("click", function(event){
event.stopPropagation();
$(this).toggleClass('expanded');
});
});
003ff5293c3b755ba2f51e8bb6976a9643ecfceb
MediaWiki:Common.css
8
137
571
569
2024-02-17T09:12:41Z
Westgrass
40
css
text/css
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* css for wiki.gg top bar and footer bar
***********************************************************************************************************/
/********* wiki.gg header *********/
header#wikigg-header #p-personal ul {
white-space: nowrap; /* for "log out" */
}
header#wikigg-header #p-personal .vector-menu-content #pt-anonuserpage, header#wikigg-header #p-personal .vector-menu-content #pt-userpage a {
/* user avatar icon position fix */
padding-top: 0;
background-position: left center;
}
@media screen and (max-width: 720px) {
header#wikigg-header #p-personal li#p-themes > span {
display: inline-block;
}
}
/********* wiki.gg footer *********/
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
margin: 0;
text-align: center;
}
@media screen and (max-width: 479px) {
footer#wikigg-footer .footer-right, footer#wikigg-footer .footer-left {
width: auto;
}
}
@media screen and (max-width: 359px) {
footer#wikigg-footer .footer-middle {
/* hide wiki.gg logo to make room to avoid text wrapping */
display: none;
}
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #C3A300FF;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.97), rgba(20, 44, 60, 0.97));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffd500;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.quicklinks {
font-size: 18px;
}
#mainpage-wrap .box.quicklinks .content {
display: flex;
gap: 2em;
flex-wrap: wrap;
}
#mainpage-wrap .box.quicklinks .content > div {
padding: 0.75em 1.5em;
border: 1px solid var(--theme-link-color);
}
.slider {
margin: 1em auto;
width: 100%;
max-width: 100%;
overflow: hidden;
position: relative;
text-align: left;
}
.slider > .prev, .slider > .next {
display: block;
width: 30px;
height: 30px;
background: rgba(255, 255, 255, 0.6);
position: absolute;
top: 50%;
transform: translateY(-50%);
cursor: pointer;
border-radius: 100%;
}
.slider > .prev:before, .slider > .next:before {
content: "";
display: block;
width: 14px;
height: 14px;
margin: 8px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath id='aarow-tiny' d='M5 11a.997.997 0 0 1-.707-.293l-4-4A.983.983 0 0 1 0 6.003v-.006a.988.988 0 0 1 .293-.704l4-4a.999.999 0 1 1 1.414 1.414L3.414 5H11a1 1 0 1 1 0 2H3.414l2.293 2.293A.999.999 0 0 1 5 11'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: #333;
}
.slider > .prev {
left: 6px;
}
.slider > .next {
right: 6px;
}
.slider > .next:before {
transform: scaleX(-1);
}
.slider ul {
height: 100%;
margin: 0;
transition: transform 0.3s;
}
.slider li {
display: grid;
position: absolute;
margin: 0;
width: 100%;
height: 100%;
background-size: var(--image-resize-mode);
background-position: center center;
background-repeat: no-repeat;
}
.slider li img, .slider li > a {
display: block;
place-self: center center;
width: 100% !important;
height: 100% !important;
opacity: 0;
}
.slider li > span {
position: absolute;
left: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.75);
color: white;
display: block;
width: 100%;
box-sizing: border-box;
padding: 8px;
font-size: 12px;
}
.slider li > span b {
display: block;
font-size: 14px;
}
.slider li > span a {
display: block;
color: #fff;
font-weight: bold;
}
@media (min-width: 640px) {
.slider li > span a {
position: absolute;
right: 8px;
top: 50%;
transform: translateY(-50%);
}
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
7f211698369c3161b029bc6b42b1f8336690f4b8
Template:Featured images
10
53
572
352
2024-02-17T09:14:50Z
Westgrass
40
wikitext
text/x-wiki
<includeonly><center><div class="slider" style="width: 600px; aspect-ratio: 8 / 5; margin:auto; --image-resize-mode: contain"><ul>
<li>[[File:BUILD-e1501145530202.jpg|600px|link=]]</li>
<li>[[File:DANGER-e1501145493999.jpg|600px|link=]]</li>
<li>[[File:MULTIPLAYER-e1501145470328.jpg|600px|link=]]</li>
<li>[[File:EXPLORE-e1501145369502.jpg|600px|link=]]</li>
<li>[[File:CREATIVITY-e1501145511200.jpg|600px|link=]]</li>
</ul></div></center></includeonly><noinclude>{{doc}}[[Category:Templates]]</noinclude>
860ccb6ec67b01f6b3e82cb2fb6265a0a43a3ccf
573
572
2024-02-17T09:15:32Z
Westgrass
40
Undo revision 572 by [[Special:Contributions/Westgrass|Westgrass]] ([[User talk:Westgrass|talk]])
wikitext
text/x-wiki
<includeonly><center><slideboxlightshow halign="center" width="400" height="250">
File:BUILD-e1501145530202.jpg
File:DANGER-e1501145493999.jpg
File:MULTIPLAYER-e1501145470328.jpg
File:EXPLORE-e1501145369502.jpg
File:CREATIVITY-e1501145511200.jpg
</slideboxlightshow></center></includeonly><noinclude>{{doc}}[[Category:Templates]]</noinclude>
d2a941ad0eca9fc41548c58d299fa3f28e973c75
Trailmakers Wiki
0
45
574
568
2024-02-17T09:15:45Z
Westgrass
40
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Trailmakers|About the Game|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building|size=wide}}<!--
-->{{FP link|Biomes|size=wide}}<!--
-->{{FP link|Game Modes|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides</h2><!--
-->
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#description2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
13c24885e7846e08f09b39678b0a4fb45aed3a36
588
574
2024-02-18T11:28:48Z
Lukkram
396381
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Artifacts|size=wide}}<!--
-->{{FP link|Salvage|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Mechanical Blocks|size=wide}}<!--
-->{{FP link|Propulsion Blocks|size=wide}}<!--
-->{{FP link|Logic Blocks|size=wide}}<!--
-->{{FP link|Building Tools|size=wide}}<!--
-->{{FP link|Sound Makers|size=wide}}<!--
-->{{FP link|Weapons|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides & Information</h2><!--
-->
*[[How to play guide for Trailmakers]]
*[[Release date]]
*[[System requirements]]
<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#description2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
498363700d85adf663d10a987817317ec0dfd61a
589
588
2024-02-18T11:35:29Z
Lukkram
396381
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Artifacts|size=wide}}<!--
-->{{FP link|Salvage|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Mechanical Blocks|size=wide}}<!--
-->{{FP link|Propulsion Blocks|size=wide}}<!--
-->{{FP link|Logic Blocks|size=wide}}<!--
-->{{FP link|Building Tools|size=wide}}<!--
-->{{FP link|Sound Makers|size=wide}}<!--
-->{{FP link|Weapons|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides & Information</h2><!--
-->
*[[Achievements]]
*[[Blueprints]]
*[[Building]]
*[[DLC]]
*[[Environment]]
*[[Game Modes]]
*[[Logic Circuits]]
*[[Maps]]
*[[Modding]]
*[[Official Competitions]]
*[[Shortcuts & Controls]]
*[[Workshop & Galleries]]
<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#description2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
e5b9581163dccaece30c0b6a15ecde862a20c031
590
589
2024-02-18T11:39:49Z
Lukkram
396381
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Artifacts|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building Tools|size=wide}}<!--
-->{{FP link|Logic Blocks|size=wide}}<!--
-->{{FP link|Mechanical Blocks|size=wide}}<!--
-->{{FP link|Propulsion Blocks|size=wide}}<!--
-->{{FP link|Salvage|size=wide}}<!--
-->{{FP link|Sound Makers|size=wide}}<!--
-->{{FP link|Weapons|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides & Information</h2><!--
-->
*[[Achievements]]
*[[Blueprints]]
*[[Building]]
*[[DLC]]
*[[Environment]]
*[[Game Modes]]
*[[Logic Circuits]]
*[[Maps]]
*[[Modding]]
*[[Official Competitions]]
*[[Shortcuts & Controls]]
*[[Workshop & Galleries]]
<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#description2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
498e608853a48ce2fbebed8fdaa86ba9ae490cc7
592
590
2024-02-18T11:54:18Z
Lukkram
396381
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Accesories|size=wide}}<!--
-->{{FP link|Artifacts|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building Tools|size=wide}}<!--
-->{{FP link|Logic Blocks|size=wide}}<!--
-->{{FP link|Mechanical Blocks|size=wide}}<!--
-->{{FP link|Propulsion Blocks|size=wide}}<!--
-->{{FP link|Salvage|size=wide}}<!--
-->{{FP link|Sound Makers|size=wide}}<!--
-->{{FP link|Weapons|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides & Information</h2><!--
-->
*[[Achievements]]
*[[Blueprints]]
*[[Building]]
*[[DLC]]
*[[Environment]]
*[[Game Modes]]
*[[Logic Circuits]]
*[[Maps]]
*[[Modding]]
*[[Official Competitions]]
*[[Shortcuts & Controls]]
*[[Workshop & Galleries]]
<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;How to help
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#description2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
5fbfd7d993c6fdfe6c44eeafe9016621d4ef2b82
DLC
0
141
575
2024-02-18T11:09:25Z
Lukkram
396381
Created page with "Page for DLC. Information pending"
wikitext
text/x-wiki
Page for DLC. Information pending
b8426827f473f9828467ae0f5edeb744b83888a1
Logic Circuits
0
142
576
2024-02-18T11:10:00Z
Lukkram
396381
Created page with "Page for Logic Circuits. Information pending"
wikitext
text/x-wiki
Page for Logic Circuits. Information pending
205f1c9cb563ee99a911c116f6fef13ae7d0d337
Maps
0
143
577
2024-02-18T11:10:32Z
Lukkram
396381
Created page with "Page for Maps. Information pending"
wikitext
text/x-wiki
Page for Maps. Information pending
7e9e00c6a7ec499a9e86702dc441d71b399bc925
Modding
0
144
578
2024-02-18T11:11:18Z
Lukkram
396381
Created page with "Page for Modding. Information pending"
wikitext
text/x-wiki
Page for Modding. Information pending
1354d8303ccf6007dd88ea399de300daf352f8e2
Official Competitions
0
145
579
2024-02-18T11:12:05Z
Lukkram
396381
Created page with "Page for Official Competitions. Information pending"
wikitext
text/x-wiki
Page for Official Competitions. Information pending
de8e3a7bad961b0f86c518e3bd1a964f8b78047e
Shortcuts & Controls
0
146
580
2024-02-18T11:12:53Z
Lukkram
396381
Created page with "Page for Shortcuts & Controls. Information pending"
wikitext
text/x-wiki
Page for Shortcuts & Controls. Information pending
9eb856bf9f7f69ee283c9479a821f14d1d5ad50c
Workshop & Galleries
0
147
581
2024-02-18T11:13:47Z
Lukkram
396381
Created page with "Page for Workshop & Galleries. Information pending"
wikitext
text/x-wiki
Page for Workshop & Galleries. Information pending
c951e0f8696e2489cdc110c75187b5ab0bae71c2
Artifacts
0
148
582
2024-02-18T11:16:38Z
Lukkram
396381
Created page with "Page for Artifacts. Information pending"
wikitext
text/x-wiki
Page for Artifacts. Information pending
6bce246fa40ae11cc97775f01b9141371e1bada5
Building Tools
0
149
583
2024-02-18T11:17:37Z
Lukkram
396381
Created page with "Page for Building Tools . Information pending"
wikitext
text/x-wiki
Page for Building Tools . Information pending
62fdb0ca7d67121eef53c677d5e8b4bf8da35a65
Sound Makers
0
150
584
2024-02-18T11:18:27Z
Lukkram
396381
Created page with "Page for Sound Makers. Information pending"
wikitext
text/x-wiki
Page for Sound Makers. Information pending
a18c0e5fdee6d8d839a67b1db32bb712c324bad3
Weapons
0
151
585
2024-02-18T11:18:55Z
Lukkram
396381
Created page with "Page for Weapons. Information pending"
wikitext
text/x-wiki
Page for Weapons. Information pending
a50a6fb369ab7b1a197d6234b7a7f980486dfeb6
Trailmakers Wiki/Top section
0
48
586
335
2024-02-18T11:25:08Z
Lukkram
396381
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Welcome box-->
<div class="welcome">Welcome to the Official [[File:TrailmakersLogo.png|150px|link=|Trailmakers]] Wiki!</div>
<div>the ''Trailmakers'' guide written and maintained by the community.</div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].
Please feel free to contribute by creating new articles or expanding existing ones.
</div><!--END Welcome box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Description box-->
<div class="heading">About Trailmakers</div>
<div style="text-align: left;">
[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
</div>
</div><!--END Description box-->
<div class="fpbox" id="fproles" style="text-align: center;"><!-- BEGIN Content box-->
<div class="heading">Quick Links</div>
<div class="fplinks"><!--
-->{{FP link|Artifacts|size=wide}}<!--
-->{{FP link|Salvage|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Mechanical Blocks|size=wide}}<!--
-->{{FP link|Propulsion Blocks|size=wide}}<!--
-->{{FP link|Logic Blocks|size=wide}}<!--
-->{{FP link|Blocks Tools|size=wide}}<!--
-->{{FP link|Sound Makers|size=wide}}<!--
-->{{FP link|Weapons|size=wide}}<!--
--></div>
</div><!-- END Heading A box--><noinclude>[[Category:Front page sections]]</noinclude>
e6c2a67122fee4ecb33bc0fbd1857688d6bac3a9
587
586
2024-02-18T11:26:32Z
Lukkram
396381
wikitext
text/x-wiki
<div class="fpbox" style="text-align: center;"><!-- BEGIN Welcome box-->
<div class="welcome">Welcome to the Official [[File:TrailmakersLogo.png|150px|link=|Trailmakers]] Wiki!</div>
<div>the ''Trailmakers'' guide written and maintained by the community.</div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].
Please feel free to contribute by creating new articles or expanding existing ones.
</div><!--END Welcome box-->
<div class="fpbox" style="text-align: center;"><!-- BEGIN Description box-->
<div class="heading">About Trailmakers</div>
<div style="text-align: left;">
[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.
The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.
</div>
</div><!--END Description box-->
<div class="fpbox" id="fproles" style="text-align: center;"><!-- BEGIN Content box-->
<div class="heading">Quick Links</div>
<div class="fplinks"><!--
-->{{FP link|Artifacts|size=wide}}<!--
-->{{FP link|Salvage|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Mechanical Blocks|size=wide}}<!--
-->{{FP link|Propulsion Blocks|size=wide}}<!--
-->{{FP link|Logic Blocks|size=wide}}<!--
-->{{FP link|Building Tools|size=wide}}<!--
-->{{FP link|Sound Makers|size=wide}}<!--
-->{{FP link|Weapons|size=wide}}<!--
--></div>
</div><!-- END Heading A box--><noinclude>[[Category:Front page sections]]</noinclude>
922f37bc6f64abea668fc5dad44e3b0415d5ca54
Accesories
0
152
591
2024-02-18T11:53:18Z
Lukkram
396381
Created page with ""Cosmetic blocks for decorating your vehicle" Info pending"
wikitext
text/x-wiki
"Cosmetic blocks for decorating your vehicle" Info pending
dc5c242c297f2e41c8048bf4d65ccefaa3397daa
593
591
2024-02-18T12:11:50Z
Lukkram
396381
wikitext
text/x-wiki
"Cosmetic blocks for decorating your vehicle" Info pending
<tabber>
|-|Exhaust=
"If you really don't care about the environment."
|-|Details=
"The devil is in the details"
|-|Lights=
"Blocks that can illuminate, or just get the party started."
|-|Flags=
"To show which country you are from - like pirate."
|-|Facial Features=
"Build your own head!"
|-|Bumpers=
"For all your Bumping needs"
|-|Rims=
"A wheel is not the same without 'em."
|-|Soundmakers=
"Make some noise y'all!"
|-|Ornaments=
"What really ties the vehicle together."
|-|Trophies=
"Show off your achievements - you've earned it!"
</tabber>
6a27507dd032d138438ffc1f89751551045b4b2d
Trailmakers
0
44
594
492
2024-02-18T13:00:00Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|test=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
'''Trailmakers''' is a game.
[[Category:Trailmakers| ]]
2545251fbef4aa350e2642e2b1852e899680bd83
595
594
2024-02-18T13:00:20Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
'''Trailmakers''' is a game.
[[Category:Trailmakers| ]]
b97604990f06cf87b8db2f3c719961e3d04fa43a
598
595
2024-02-21T22:30:58Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{ Infocard
| type = Game
| name = Trailmakers
| color = #ECDF18
| text =
Trailmakers Infocard Test
}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
[[Category:Trailmakers| ]]
4f8c22dfe33b31a7dcca303aa538339df3fa63ba
599
598
2024-02-21T22:36:43Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{ Infocard
| type = Game
| name = Trailmakers
| color = #335999
| text =
Trailmakers Infocard Test
}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
[[Category:Trailmakers| ]]
55ea95a90f8ac6d59628dc1af059cd07743b63f9
Template:Infocard/box
10
81
596
414
2024-02-21T22:25:17Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
--><div class="box {{{class|{{options/get|infocard|box-class}}}}}" style="{{{css|{{{style|{{options/get|infocard|box-css}}}}}}}}"><!--
-->{{{titlealt|{{#if:{{{title|}}}|<!--
--><div class="title" style="border-left-color:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color-all}}}}}}};"><!--
--><span>{{{title|}}}</span><!--
--></div><!--
-->}}}}}<!--
--><div class="content">
{{{1|}}}
</div><!--
--></div><!--
--></includeonly><noinclude>
{{internal subtemplate}}
{{category|Formatting templates}}
</noinclude>
e09219f74dd813531b1a8f96e047e993db60d84b
597
596
2024-02-21T22:27:13Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
--><div class="box {{{class|{{options/get|infocard|box-class}}}}}" style="{{{css|{{{style|{{options/get|infocard|box-css}}}}}}}}"><!--
-->{{{titlealt|{{#if:{{{title|}}}|<!--
--><div class="title" style="border-left-color:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color-all}}}}}}};"><!--
--><span>{{{title|}}}</span><!--
--></div><!--
-->}}}}}<!--
--><div class="content">
{{{1|}}}
</div><!--
--></div><!--
--></includeonly><noinclude>
{{category|Formatting templates}}
</noinclude>
659ccbece6177c3762a616d0bff19b76dfd1781c
600
597
2024-02-21T22:42:00Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
--><div class="box {{{class|{{options/get|infocard|box-class}}}}}" style="{{{css|{{{style|{{options/get|infocard|box-css}}}}}}}}"><!--
-->{{{titlealt|{{#if:{{{title|}}}|<!--
--><div class="title" style="border-left-color:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color-all}}}}}}};"><!--
--><span>{{{title|}}}</span><!--
--></div><!--
-->}}}}}<!--
--><div class="content">
{{{1|}}}
</div><!--
--></div><!--
--></includeonly><noinclude>
</noinclude>
a767d09046c83cf0fe5de2c431294b5240e059a0
603
600
2024-02-21T22:55:32Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
--><div class="box {{{class|{{options/get|infocard|box-class}}}}}" style="{{{css|{{{style|{{options/get|infocard|box-css}}}}}}}}"><!--
-->{{{titlealt|{{#if:{{{title|}}}|<!--
--><div class="title" style="border-left-color:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color-all}}}}}}};"><!--
--><span>{{{title|}}}</span><!--
--></div><!--
-->}}}}}<!--
--><div class="content">
{{{1|}}}
</div><!--
--></div><!--
--></includeonly><noinclude>
{{doc}}
</noinclude>
c11f44340b0ad91bc7edc0582bd97afae1ae3d36
Template:(
10
66
601
380
2024-02-21T22:47:31Z
Lukkram
396381
wikitext
text/x-wiki
{{<noinclude>
</noinclude>
ca8cbfc5c4521db165f09c766d3e9d56ba897a3b
604
601
2024-02-21T22:57:28Z
Lukkram
396381
wikitext
text/x-wiki
{{<noinclude>
{{doc}}
</noinclude>
b45dfc5611fcf520075ac5b52f0e1a5882361e49
Template:Doc
10
90
602
432
2024-02-21T22:54:58Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly>{| class="article-table" style="width:100%;"
|- style="font-size:18px;"
! Template documentation follows
|-
| ''Note: the template above may sometimes be partially or fully invisible.''
|-
| Visit [[Template:{{PAGENAMEE}}/doc]] to edit this documentation. ([[Template:Documentation|How does this work?]])
|}
<div style="margin:0 1em;">
{{{{PAGENAME}}/doc}}</div></includeonly><noinclude>{{doc}}[[Category:Template documentation| ]]</noinclude>
693fc2c5bedce938cf038952928753140ca8ac6f
Template:)
10
67
605
382
2024-02-21T22:59:57Z
Lukkram
396381
wikitext
text/x-wiki
}}<noinclude>
{{doc}}
</noinclude>
734a6914a2e76c7b8c162480ec05b8bc3229399a
Template:Bool
10
68
606
384
2024-02-21T23:04:31Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly>{{#switch:{{lc:{{{1|}}}}}|y|1|yes|true=y|#default={{#if:{{{1|}}}||{{{2|}}}}}}}</includeonly><noinclude>{{doc}}
</noinclude>
aef2c319e79577bb70b509c60a0f63eeab675a9d
Template:Category
10
77
607
406
2024-02-21T23:07:42Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
-->{{#if:{{langList|isOnWiki|{{{lang|{{lang|}}}}}}}|<!--
-->[[Category:<!--
-->{{{1|}}}/{{{lang|{{lang|}}}}}<!-- category name
-->{{#ifeq:{{{2|-unset}}}|{{{2|unset-}}}|{{!}}{{{2}}}}}<!-- category sortkey, only if set (can be blank)
--> ]]<!-- the space here is needed for blank sortkeys
-->|<!--
// loading glossary for this language:
-->{{#if:{{#dplvar:_cate_glossary_{{{lang|{{lang|}}}}}}}|| {{category/db-{{{lang|{{lang|}}}}}}} }}<!--
-->[[Category:<!--
-->{{#or:{{#dplvar:_cate_glossary-{{ucfirst:{{{1|}}}}}}}|{{tr|{{{1|}}}|lang={{{lang|{{lang|}}}}}}}}}<!-- category name
-->{{#ifeq:{{{2|-unset}}}|{{{2|unset-}}}|{{!}}{{#or:{{#dplvar:_cate_glossary-{{ucfirst:{{{2|}}}}}}}|{{tr|{{{2|}}}|lang={{{lang|{{lang|}}}}}}}}}}}<!-- category sortkey, only if set (can be blank)
--> ]]<!--
-->}}<!--
--></includeonly><!--
--><noinclude>{{i18n-ready}}{{doc}}
</noinclude>
cd19d65f0358715701f04f91b55ddd8726adf154
Template:Color box
10
87
608
426
2024-02-21T23:09:49Z
Lukkram
396381
wikitext
text/x-wiki
<span class="color-box" style="background:{{{1|}}}; border:1px solid {{{border|}}}; width:{{{size|{{{width|1.25em}}}}}}; height:{{{size|{{{height|1.25em}}}}}};"></span><!--
// display text:
-->{{#switch:{{bool|{{{text|}}}}}-{{#if:{{{textformat|}}}|y}}-{{#if:{{{1|}}}|y}}<!--
-->|y--y= <code>{{{1|}}}</code><!-- only if $text is true and $textformat is blank and $1 is not blank
-->|y-y-y= {{color box/textformat|{{{1}}}|textformat={{{textformat}}}}}<!-- only if $text is true and $textformat is not blank and $1 is not blank
-->}}<!--
--><noinclude>
{{lua|Color}}
{{doc}}
</noinclude>
01aa6a20978c0d3d8b5e083d618782f8c9ebe2d1
Template:Dotlist
10
85
609
422
2024-02-21T23:22:00Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
--><div class="dotlist {{#switch:{{{bold|{{#dplvar:_dotlist_flag_bold|}}}}}|n|no=nobold}} {{{space|{{#dplvar:_dotlist_flag_space|}}}}} {{#switch:{{{dot|{{#dplvar:_dotlist_flag_dot|}}}}}|n|no=nodot}} {{#if:{{bool|{{{inline|}}}}}|inline}} {{{class|{{#dplvar:_dotlist_flag_class|}}}}}" style="{{{css|{{#dplvar:_dotlist_flag_css|}}}}};{{{style|}}}"><!--
-->{{#if:{{{title|}}}|<span class="title">{{{title|}}}</span>}}<!--
-->{{#if:{{bool|{{{paren|}}}}}|(}}<ul><!--
-->{{#fornumargs:_|v|<li>{{#var:v}}</li>}}<!--
--></ul>{{#if:{{bool|{{{paren|}}}}}|)}}<!--
--></div><!--
--></includeonly><!--
--><noinclude>
{{doc}}
</noinclude>
84f8f607401fb40141ff109a7a068e4ea764329b
Template:Error
10
69
610
386
2024-02-21T23:26:09Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
// localization info is autoloaded from Template:Error/l10n
--><span class="error" data-source="{{{from|{{{source|}}}}}}" title="{{{title|}}}">{{l10n|error|intro}}{{{1|{{{text|}}}}}}</span><!--
-->{{#if:{{bool|{{{cate|y}}}}}|<!--
// general, common error cate
-->[[Category:{{l10n|error|cate}}]]<!--
// specific error cate based on the source of the error
-->{{#if:{{{from|{{{source|}}}}}}|[[Category:{{l10n|error|cate_from|$from$={{{from|{{{source|}}}}}}}}]]}}<!--
// other, custom error cates
-->{{#fornumargs:k|v|<!-- iterate over all unnamed parameters
-->{{#ifeq:{{#var:k}}|1||<!-- skip $1
-->{{#if:{{#var:v}}|[[Category:{{#var:v}}]]}}<!--
-->}}<!--
-->}}<!--
-->{{#forargs:cate|k|v|<!-- iterate over all parameters of the format "cate<number>", including $cate
-->{{#if:{{isNumber|onlypositive=y|0{{#var:k}}}}|<!--
-->{{#if:{{#var:v}}|[[Category:{{#var:v}}]]}}<!--
-->}}<!--
-->}}<!--
-->}}<!--
--></includeonly><!--
--><noinclude>
{{i18n-ready}}{{doc}}
</noinclude>
5c372a233ab8fd06692a02aec5f269750eca6e02
Template:Flexbox
10
88
611
428
2024-02-21T23:28:11Z
Lukkram
396381
wikitext
text/x-wiki
{{flexstart|{{#if:{{{inline|}}}|inline}}<!--
-->|wrap={{{wrap|}}}<!--
-->|direction={{{direction|}}}<!--
-->|justify={{{justify|}}}<!--
-->|alignitems={{{alignitems|}}}<!--
-->|alignlines={{{alignlines|}}}<!--
-->|width={{{width|}}}<!--
-->|height={{{height|}}}<!--
-->|css={{{css|{{{style|}}}}}}<!--
-->|cssclass={{{cssclass|{{{class|}}}}}}<!--
-->|id={{{id|}}}<!--
-->}}<!--
-->{{#fornumargs:_|v|{{#var:v}}}}<!--
-->{{flexend}}<noinclude>
{{doc}}
</noinclude>
9cb54dde305928aead28f09622ac6001970c99a7
Template:Flexend
10
79
612
410
2024-02-21T23:29:17Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly></div></includeonly><noinclude>
Internal template. See [[Template:Flexbox]] for documentation.
</noinclude>
e18fa7ad8f42d5e6edf27f7d628952b357a7838a
Template:Flexstart
10
80
613
412
2024-02-21T23:30:03Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><div style="<!--
======= type: flexbox and/or flexitem =======
//parameter: {{{1}}}, 'item' for flexitem only (not a flexbox); 'inline' or 'inlinebox' for inline-flexbox; other values for flexbox
-->{{#switch:{{{1|}}}<!--
-->|inlinebox|inline=display:inline-flex;<!--
-->|item=<!-- need nothing
-->|#default=display:flex;<!--
-->}}<!--
======= parameters for flexbox =======
-->{{#ifeq:{{{1}}}|item||<!-- only if $type != item
//parameter: wrap, default value is 'wrap'
-->{{#switch:{{{wrap|}}}<!--
-->|no|nowrap=flex-wrap:nowrap;<!--
-->|#default=flex-wrap:wrap;<!--
-->}}<!--
//paramter: direction, no need to set up default, just left blank to use css default.
-->{{#switch:{{{direction|}}}<!--
-->|=<!-- Only if explicitly specified
-->|row-reverse=flex-direction:row-reverse;<!--
-->|column=flex-direction:column;<!--
-->|column-reverse=flex-direction:column-reverse;<!--
-->|#default=flex-direction:row;<!--
-->}}<!--
//paramter: justify, no need to set up default, just left blank to use css default.
-->{{#switch:{{{justify|}}}|<!--
-->|=<!-- Only if explicitly specified
-->|left|flex-start=justify-content:flex-start;<!--
-->|right|flex-end=justify-content:flex-end;<!--
-->|justified|space-between=justify-content:space-between;<!--
-->|space-around=justify-content:space-around;<!--
-->|#default=justify-content:{{{justify|}}};<!--
-->}}<!--
//paramter: alignitems, no need to set up default, just left blank to use css default.
-->{{#switch:{{{alignitems|}}}<!--
-->|=<!-- Only if explicitly specified
-->|top|flex-start=align-items:flex-start;<!--
-->|bottom|flex-end=align-items:flex-end;<!--
-->|middle=align-items:center;<!--
-->|#default=align-items:{{{alignitems|}}};<!--
-->}}<!--
//paramter: alignlines, no need to set up default, just left blank to use css default.
-->{{#switch:{{{alignlines|}}}<!--
-->|=<!-- Only if explicitly specified
-->|top|flex-start=align-content:flex-start;<!--
-->|bottom|flex-end=align-content:flex-end;<!--
-->|justified|space-between=align-content:space-between;<!--
-->|#default=align-content:{{{alignlines|}}};<!--
-->}}<!--
-->}}<!-- end if $type != item
======= parameters for flexitem =======
//parameter: order
-->{{#if:{{{order|}}}|<!--
-->order:{{{order|}}};<!--
-->}}<!--
//parameter: grow
-->{{#if:{{{grow|}}}|<!--
-->flex-grow:{{{grow|}}};<!--
-->}}<!--
//parameter: shrink
-->{{#if:{{{shrink|}}}|<!--
-->flex-shrink:{{{shrink|}}};<!--
-->}}<!--
//parameter: basis
-->{{#if:{{{basis|}}}|<!--
-->flex-basis:{{{basis|}}};<!--
-->}}<!--
//paramter: alignself, no need to set up default, just left blank to use css default.
-->{{#switch:{{{alignself|}}}<!--
-->|=<!-- Only if explicitly specified
-->|top|flex-start=align-self:flex-start;<!--
-->|bottom|flex-end=align-self:flex-end;<!--
-->|middle=align-self:center;<!--
-->|#default=align-self:{{{alignself|}}};<!--
-->}}<!--
======= parameters for general css property or html attribute =======
//parameter: width
-->{{#if:{{{width|}}}|width:{{{width|}}};}}<!--
//parameter: height
-->{{#if:{{{height|}}}|height:{{{height|}}};}}<!--
//paramter: css / style
-->{{#if:{{{css|{{{style|}}}}}}|{{{css|{{{style|}}}}}};}}<!--
//parameter: class arrtibute
-->"{{#if:{{{cssclass|{{{class|}}}}}}|<nowiki/> class="{{{cssclass|{{{class|}}}}}}"}}<!--
//parameter: id arrtibute
-->{{#if:{{{id|}}}|<nowiki/> id="{{{id|}}}"}}<!--
ending tag-->></includeonly><noinclude>
Internal template. See [[Template:Flexbox]] for documentation.
</noinclude>
50c6d181927a645224516113bd99c6e96f5681e5
Template:Ifexists
10
70
614
390
2024-02-21T23:34:19Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly>{{#if: {{#dpl:skipthispage = false | redirects = {{{redirects|include}}} | noresultsheader = 1 | title = {{{1|}}}}} | {{{3|}}} | {{{2|}}} }}</includeonly><noinclude>
{{doc}}
</noinclude>
18a51d7820ee45c67ea3cdc5f45b1f40589af838
Template:Infocard
10
57
615
362
2024-02-21T23:36:32Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
// predefined color keywords
-->{{#vardefine:infocard:color_melee|#d20000}}<!--
-->{{#vardefine:infocard:color_warrior|{{#var:infocard:color_melee}}}}<!--
-->{{#vardefine:infocard:color_ranged|#21a08d}}<!--
-->{{#vardefine:infocard:color_ranger|{{#var:infocard:color_ranged}}}}<!--
-->{{#vardefine:infocard:color_magic|#9d0d79}}<!--
-->{{#vardefine:infocard:color_mage|{{#var:infocard:color_magic}}}}<!--
-->{{#vardefine:infocard:color_summoning|#066aff}}<!--
-->{{#vardefine:infocard:color_summon|{{#var:infocard:color_summoning}}}}<!--
-->{{#vardefine:infocard:color_summoner|{{#var:infocard:color_summoning}}}}<!--
// characteristic "terraria" color
-->{{#vardefine:infocard:color_terraria|var(--theme-accent-color)}}<!-- CSS variable to support light and dark themes
// default color
-->{{#vardefine:infocard:color_default|var(--custom-accent-border-color)}}<!-- CSS variable to support light and dark themes
// translate theme and color parameters according to the predefined keywords if possible, otherwise leave them as-is
-->{{#vardefine:infocard:color|{{#var:infocard:color_{{lc:{{{theme|{{{color|}}}}}}}}|{{{theme|{{{color|}}}}}}}}}}<!--
-->{{#vardefine:infocard:color-all|{{#var:infocard:color_{{lc:{{{theme|}}}}}|{{{theme|}}}}}}}<!--
--><div class="infocard clearfix {{{class|}}}" style="{{{css|{{{style|}}}}}}" id="{{{id|}}}"><!--
// minicard to the side
-->{{#if:{{{image|{{{imagealt|}}}}}}|<!--
--><div class="card"><!--
--><div class="image clearfix" style="width:{{{size|250px}}}">{{{imagealt|[[File:{{{image|}}}|{{{size|250px}}}|link=]]}}}</div><!--
// there are 3 text parts to display in the minicard: intro, textlist, outro
// textlist is comprised of headings and texts and is defined via "card_" parameters, e.g. "|card_foo=Heading|foo=Text"
-->{{#vardefine:infocard:textlist|}}<!--
// concatenate all "card_x" and "x" parameters into one big textlist
-->{{#forargs:card_|key|heading|<!-- e.g. with "|card_foo=Heading|foo=Text", #var:key is "foo" and #var:heading is "Heading"
-->{{#vardefine:infocard:textlist|{{#var:infocard:textlist}}<!-- concat
--><dt>{{#var:heading}}</dt><!--
--><dd>{{{ {{#var:key}}|}}}</dd><!-- e.g. "Text" with "|card_foo=Heading|foo=Text"
-->}}<!--
-->}}<!--
// open the text content <div> of the minicard
-->{{#vardefine:infocard:minicard_closingtag|}}<!--
-->{{#if:{{{cardintro|{{{cardoutro|{{#var:infocard:textlist}}}}}}}}|<!--
--><div class="content clearfix" style="width:{{{size|250px}}}">{{#vardefine:infocard:minicard_closingtag|</div>}}<!--
-->}}<!--
// display part 1: intro text
-->{{#vardefine:infocard:closingtag|}}<!--
-->{{#if:{{{cardintro|}}}|<!--
--><div class="intro">
<nowiki/><!--
-->{{#vardefine:infocard:closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{cardintro|}}}<!-- we reduce the post-expand include size by not putting this in the #if: clause above
-->{{#var:infocard:closingtag}}<!--
// display part 2: textlist
-->{{#vardefine:infocard:closingtag|}}<!--
-->{{#if:{{#var:infocard:textlist}}|<!--
--><dl>{{#vardefine:infocard:closingtag|</dl>}}<!--
-->}}<!--
-->{{#var:infocard:textlist}}<!--
-->{{#var:infocard:closingtag}}<!--
// display part 3: outro
-->{{#vardefine:infocard:closingtag|}}<!--
-->{{#if:{{{cardoutro|}}}|<!--
--><div class="outro">
<nowiki/><!--
-->{{#vardefine:infocard:closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{cardoutro|}}}<!--
-->{{#var:infocard:closingtag}}<!--
// close the text content <div> of the minicard
-->{{#var:infocard:minicard_closingtag}}<!--
--></div><!--
-->}}<!--
// main heading of the infocard
-->{{#if:{{{name|}}}|<!--
-->{{infocard/mainheading<!--
-->|name={{{name|}}}<!--
-->|subname={{{subname|}}}<!--
-->|namenote={{{namenote|}}}<!--
-->|type={{{type|}}}<!--
-->|padding={{{size|}}}<!--
-->|icon={{#if:{{{image|{{{imagealt|}}}}}}||{{{icon|}}}}}<!--
-->|iconalt={{#if:{{{image|{{{imagealt|}}}}}}||{{{iconalt|}}}}}<!--
-->}}<!--
-->}}<!--
// intro text
-->{{#vardefine:infocard:intro_closingtag}}<!--
-->{{#if:{{{intro|}}}|<!--
--><div class="intro" style="{{{intro_css|{{{intro_style|}}}}}}">
<nowiki/><!--
-->{{#vardefine:infocard:intro_closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{intro|}}}<!-- we reduce the post-expand include size by not putting this in the #if: clause above
-->{{#var:infocard:intro_closingtag}}<!--
// boxes
// these are defined via "title_" parameters, e.g. "|title_foo=Box heading|foo=Box text"
-->{{#forargs:title_|key|heading|<!-- e.g. with "|title_foo=Box heading|foo=Box text", #var:key is "foo" and #var:heading is "Box heading"
-->{{infocard/box|title={{#var:heading}}|{{{ {{#var:key}}|}}}}}<!--
-->}}<!--
// outro text
-->{{#vardefine:infocard:outro_closingtag}}<!--
-->{{#if:{{{outro|{{{text|}}}}}}|<!--
--><div class="outro" style="{{{outro_css|{{{outro_style|}}}}}}">
<nowiki/><!--
-->{{#vardefine:infocard:outro_closingtag|<nowiki/>
</div>}}<!--
-->}}<!--
-->{{{outro|{{{text|}}}}}}<!--
-->{{#var:infocard:outro_closingtag}}<!--
--></div><!--
--></includeonly><noinclude>
{{doc}}
</noinclude>
52b74e640f8c948fc22771b59a180e6602379f0c
Template:Infocard/doc
10
89
616
430
2024-02-21T23:37:35Z
Lukkram
396381
wikitext
text/x-wiki
This template is used to display content in an "info card", which may be visually more appealing than plain text in certain contexts.
It has several subtemplates:
* For documentation of {{tl|infocard/box}}, see [[#Custom boxes|Custom boxes]].
* For documentation of {{tl|infocard/mainheading}} and {{tl|infocard/heading}}, see [[#Custom headings|Custom headings]].
* For documentation of {{tl|infocard/start}}, {{tl|infocard/end}}, {{tl|infocard/box/start}}, and {{tl|infocard/box/end}}, see [[#Start and end|Start and end]].
== Standard usage ==
<div class="mw-code">{{(}} '''infocard'''<br/><!--
--><br/>| theme = ''<theme color>''<!--
--><br/>| color = ''<theme color>''<!--
--><br/>| class = ''<custom CSS classes>''<!--
--><br/>| ''style / css'' = ''<custom CSS rules>''<!--
--><br/>| id = ''<HTML ID>''<!--
--><br/><!--
--><br/>| name = ''<main heading text>''<!--
--><br/>| type = ''<smaller text above main heading>''<!--
--><br/>| namenote = ''<smaller text after main heading>''<!--
--><br/>| subname = ''<smaller text below main heading>''<!--
--><br/><!--
--><br/>| icon = ''<image name of icon next to main heading>''<!--
--><br/>| iconalt = ''<custom icon display>''<!--
--><br/>| iconsize = ''<icon size>''<!--
--><br/>| iconclass = ''<custom CSS classes for icon>''<!--
--><br/><!--
--><br/>| intro = ''<text above boxes>''<!--
--><br/>| ''intro_style / intro_css'' = ''<custom CSS rules for text>''<!--
--><br/>| ''title_<key1> / title_<key2> / ...'' = ''<box title>''<!--
--><br/>| ''<key1> / <key2> / ...'' = ''<box content>''<!--
--><br/>| ''text / outro'' = ''<text below boxes>''<!--
--><br/>| ''outro_style / outro_css'' = ''<custom CSS rules for text>''<!--
--><br/><!--
--><br/>| size = ''<minicard width>''<!--
--><br/>| image = ''<minicard image name>''<!--
--><br/>| imagealt = ''<custom minicard image display>''<!--
--><br/>| cardintro = ''<minicard text above sub-titles>''<!--
--><br/>| ''card_<key1> / card_<key2> / ...'' = ''<minicard sub-title>''<!--
--><br/>| ''<key1> / <key2> / ...'' = ''<text below respective minicard sub-title>''<!--
--><br/>| cardintro = ''<minicard text below sub-titles>''<!--
--><br/><!--
--><br/>{{)}}</div>
; theme, color
Color of the heading bars in the infocard. <code>$theme</code> affects both the card's principal heading and the headings of boxes, whereas <code>$color</code> only affects the card's principal heading. Values can be any valid CSS color (e.g. <code>#E4F0F7</code>, <code>red</code>, <code>rgba(0,0,0,0.3)</code>), or one of these predefined shortcuts (mainly intended for [[Guide:Class setups]]):
{| class="wikitable"
| {{dotlist|<code>melee</code>|<code>warrior</code>}}
| {{color box|text=y|#D20000}}
|-
| {{dotlist|<code>ranged</code>|<code>ranger</code>}}
| {{color box|text=y|#21A08D}}
|-
| {{dotlist|<code>magic</code>|<code>mage</code>}}
| {{color box|text=y|#9D0D79}}
|-
| {{dotlist|<code>summoning</code>|<code>summon</code>|<code>summoner</code>}}
| {{color box|text=y|#066AFF}}
|-
| {{dotlist|<code>terraria</code>}}
| {{color box|text=y|var(--theme-accent-color)}}
|-
| {{dotlist|<code>default</code>}}
| {{color box|text=y|var(--custom-accent-border-color)}}
|}
If omitted, the default value is {{color box|text=y|var(--theme-highlight-background)}}.
; class
CSS class(es) to add to the infocard. Values can be any custom classes and/or these special classes:
* <code>compact</code>: Reduces the size of the infocard somewhat, in particular the heading.
* <code>auto-width</code>: By default, the infocard occupies the entire width of the article, potentially overlapping floating elements like an image thumbnail. This class causes it to only take up available space, i.e. not overlap floating elements.
* <code>biome</code>: Designed for the special infocard format used on biomes' and events' pages (groups of boxes laid out in a flexbox format). See many pages in [[:Category:Environments]] for examples.
; style/css
Custom styling for the infocard.
; id
ID attribute for the infocard. Can be used for more complex styling via CSS, or for directly linking to the infocard (also see {{tl|anchor}}).
; name
Most prominent heading of the infocard.
; type
Smaller text above <code>$name</code>, to be used for grouping infocards.
; namenote
Smaller text directly after <code>$name</code>, for supplemental information.
; subname
Smaller text below <code>$name</code>, for supplemental information.
; icon
File name of the icon to be displayed to the right of the infocard's heading, without <code><nowiki>[[File:</nowiki></code> syntax (just the file name).
; iconalt
By default, the icon is displayed as <code><nowiki>[[File:$icon|link=]]</nowiki></code>. This parameter can be used to customize that, e.g. to link the icon.
; iconsize
Size of the icon in any valid CSS length (e.g. <code>20px</code>, <code>1.5em</code>), default is <code>auto</code>.
; iconclass
CSS class(es) to add to the icon.
; intro
Main content of the infocard. Will be displayed above any potential boxes.
; intro_style/intro_css
Custom styling for the <code>$intro</code> text.
; text/outro
Main content of the infocard. Will be displayed below any potential boxes.
; outro_style/outro_css
Custom styling for the <code>$text</code>/<code>$outro</code> text.
; title_<key>, <key>
Boxes to be displayed between <code>$intro</code> and <code>$text</code>/<code>$outro</code>. Assign each box an identifier (a "key"), then use the parameter <code>$title_<key></code> for the heading of the box and the parameter <code>$<key></code> for the content of the box. For instance, use <code>| title_box1 = First box | box1 = Lorem ipsum</code> to display a box with the heading "First box" and the content "Lorem ipsum". <code>box1</code> is the identifier ("key") in this example.
; image
Enables a "mini card" to the side of the infocard which consists of an image (as defined by this parameter, without <code><nowiki>[[File:</nowiki></code> syntax) and potentially additional text below it. If the minicard is enabled, the <code>$icon</code> will not be displayed, because they both occupy the same spot.
; imagealt
By default, the image is displayed as <code><nowiki>[[File:$image|$size|link=]]</nowiki></code>. This parameter can be used to customize that, e.g. to link the image.
; size
Width of the image/minicard (without border):
* If <code>$image</code> is used, the image will be as wide as the minicard. The value for <code>$size</code> must be in pixels (because it must conform to the <code><nowiki>[[File:</nowiki></code> syntax).
* If <code>$imagealt</code> is used, <code>$size</code> will only affect the width of the minicard, as the image width is custom. The value for <code>$size</code> can be any valid CSS length (e.g. <code>200px</code>, <code>5em</code>).
The default value is <code>250px</code>.
; cardintro
Main content of the minicard. Will be displayed above any potential sub-headings.
; cardoutro
Main content of the minicard. Will be displayed below any potential sub-headings.
; card_<key>, <key>
Sub-headings to be displayed between <code>$cardintro</code> and <code>$cardoutro</code>. Assign each sub-heading an identifier (a "key"), then use the parameter <code>$card_<key></code> for the heading and the parameter <code>$<key></code> for the text below the heading. For instance, use <code>| card_part1 = First sub-heading | part1 = Lorem ipsum</code> to display a sub-heading "First sub-heading" and text "Lorem ipsum" below it. <code>part1</code> is the identifier ("key") in this example.
=== Visualization ===
This is a visualization of what part is affected by each parameter:
{{infocard
|type=<code><nowiki>{{{type}}}</nowiki></code>
|name=<code><nowiki>{{{name}}}</nowiki></code>
|namenote=<code><nowiki>{{{namenote}}}</nowiki></code>
|subname=<code><nowiki>{{{subname}}}</nowiki></code>
|imagealt=<div style="padding: 70px 0.5em;text-align: center; background: var(--theme-background-accent)"><code><nowiki>{{{image}}}</nowiki></code> or <code><nowiki>{{{imagealt}}}</nowiki></code><br/><br/>With <code><nowiki>{{{icon}}}</nowiki></code> or <code><nowiki>{{{iconalt}}}</nowiki></code>, this will be a simple icon instead of a full minicard.</div>
|size=300px
|cardintro=<code><nowiki>{{{cardintro}}}</nowiki></code>
|card_index1=<code><nowiki>{{{card_<key1>}}}</nowiki></code>
|index1=<code><nowiki>{{{<key1>}}}</nowiki></code>
|card_index2=<code><nowiki>{{{card_<key2>}}}</nowiki></code>
|index2=<code><nowiki>{{{<key2>}}}</nowiki></code>
|card_index3=...
|index3=...
|cardoutro=<code><nowiki>{{{cardoutro}}}</nowiki></code>
|intro=<code><nowiki>{{{intro}}}</nowiki></code>
|title_keyA=<code><nowiki>{{{title_<keyA>}}}</nowiki></code>
|keyA=<code><nowiki>{{{<keyA>}}}</nowiki></code>
|title_keyB=<code><nowiki>{{{title_<keyB>}}}</nowiki></code>
|keyB=<code><nowiki>{{{<keyB>}}}</nowiki></code>
|title_keyC=<code><nowiki>{{{title_<keyC>}}}</nowiki></code>
|keyC=<code><nowiki>{{{<keyC>}}}</nowiki></code>
|title_keyD=<code><nowiki>...</nowiki></code>
|keyD=<code><nowiki>...</nowiki></code>
|outro=<code><nowiki>{{{outro}}}</nowiki></code> or <code><nowiki>{{{text}}}</nowiki></code>
}}
=== Examples ===
==== Simple ====
<pre>{{ infocard
| name = Terraria
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| type = Game
| name = Terraria
| namenote = for {{desktop}}
| subname = Windows, macOS, Linux
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| type = Game
| name = Terraria
| namenote = for {{desktop}}
| subname = Windows, macOS, Linux
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| type = Game
| name = Terraria
| color = #168436
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| type = Game
| name = Terraria
| color = #168436
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
==== Icon ====
<pre>{{ infocard
| name = Terraria
| icon = Guide.png
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| icon = Guide.png
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Terraria
| iconalt = [[File:Tree.png|link=|x50px]]
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| iconalt = [[File:Tree.png|link=|x50px]]
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Terraria
| iconalt =
<div style="background:var(--theme-background);border-radius:100px">{{flexbox
|css=width:65px;
height:65px;
background: var(--theme-highlight-background);
border: 1px solid var(--theme-border-color);
border-radius:100px;
|alignitems=center
|justify=center
|[[File:Map Icon Guide.png|link=|35px]]
}}</div>
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Terraria
| iconalt =
<div style="background:var(--theme-background);border-radius:100px">{{flexbox
|css=width:65px;
height:65px;
background: var(--theme-highlight-background);
border: 1px solid var(--theme-border-color);
border-radius:100px;
|alignitems=center
|justify=center
|[[File:Map Icon Guide.png|link=|35px]]
}}</div>
| text =
Terraria is a video game developed by Re-Logic. It was first released as a game for Windows on May 16th, 2011 but has since expanded to several other platforms. It is a 2D action-adventure, open-world sandbox / platformer game in which the player controls a single character in a generated world.
}}
==== Boxes ====
<pre>{{ infocard
| name = Biomes
| intro = There are two important biomes: the [[Forest]] and the [[Desert]].
| title_forest = Forest biome
| forest =
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
| title_desert = Desert biome
| desert =
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
| outro = There are also other biomes.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Biomes
| intro = There are two important biomes: the [[Forest]] and the [[Desert]].
| title_forest = Forest biome
| forest =
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
| title_desert = Desert biome
| desert =
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
| outro = There are also other biomes.
}}
==== Minicard ====
<pre>{{ infocard
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 200px
| cardintro = A player in the Snow biome.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 200px
| cardintro = A player in the Snow biome.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 300px
| cardintro = Biome features:
| card_enemies = Enemies
| enemies = <nowiki/>
* Ice Slime
* Frozen Zombie
| card_drops = Enemy drops
| drops = Many useful items
| cardoutro = Also has its own [[music]] track.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Snow biome
| text =
The [[Snow biome]] is a surface biome that takes on an arctic appearance with its constant snowfall, its ground made of Snow and Ice Blocks, and its Boreal trees. It can be of moderate difficulty in the early game, becoming relatively easy with some basic equipment. The biome is always found in the direction of the Dungeon, opposite the Underground Desert and Jungle. It extends underground and transitions to the Ice biome in the Cavern layer.
Specific features of the Snow biome include a different water color and a snowscape background. Boreal Trees and Shiverthorn frequently grow in the snow. Penguins wander the surface, and typical enemies include Ice Slimes, Frozen Zombies, and Demon Eyes. When the player touches water or Shimmer in the Snow biome in Expert or Master Mode, it inflicts the player with the Chilled debuff until 5 seconds after they leave the liquid. During rain, the biome undergoes a Blizzard, decreasing visibility.
| image = Walkthrough Snow.png
| size = 300px
| cardintro = Biome features:
| card_enemies = Enemies
| enemies = <nowiki/>
* Ice Slime
* Frozen Zombie
| card_drops = Enemy drops
| drops = Many useful items
| cardoutro = Also has its own [[music]] track.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Moon Lord
| text = The Moon Lord is the final boss of the game.
| imagealt =
<div style="
padding: 20px 20px 0;
background: #61BBC2;
margin-bottom: -15px;">
[[File:Moon Lord.png|160px|link=]]
</div>
| size = 200px
| card_drops = Drops
| drops = Some items
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Moon Lord
| text = The Moon Lord is the final boss of the game.
| imagealt =
<div style="
padding: 20px 20px 0;
background: #61BBC2;
margin-bottom: -15px;">
[[File:Moon Lord.png|160px|link=]]
</div>
| size = 200px
| card_drops = Drops
| drops = Some items
}}
== Custom boxes ==
The standard layout of an infocard's content is as described above: intro – boxes – outro. Because this can be limiting, it is possible to manually create boxes in the intro and outro. The subtemplate used for this is {{tl|infocard/box}}.
<code>{{(}} '''infocard/box''' | title = ''<box heading>'' | ''<box contents>'' | color = ''<theme color>'' | titlealt = ''<custom box heading format>'' | class = ''<custom CSS classes>'' | ''style/css'' = ''<custom styling>'' {{)}}</code>
; title
Heading of the box.
; First unnamed parameter
Contents of the box.
; color
Color of the heading bar; see [[#Standard usage|above]] for details.
; titlealt
Customize the format of the heading completely. See the source code of [[Template:Infocard/box]] for the default format and how this parameter overrides it.
; class
CSS class(es) to add to the box.
; style/css
Custom styling for the box.
=== Examples ===
==== Simple ====
<pre>{{ infocard
| name = Biomes
| text =
There are many important biomes. The first one is the Forest.
{{infocard/box | title = Forest biome |
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
}}
Another important one is the Desert.
{{infocard/box | title = Desert biome |
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}
There are many other important biomes.
{{infocard/box |
Worth mentioning are the [[Snow biome]] and the [[Jungle]].
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Biomes
| text =
There are many important biomes. The first one is the Forest.
{{infocard/box | title = Forest biome |
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
}}
Another important one is the Desert.
{{infocard/box | title = Desert biome |
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}
There are many other important biomes.
{{infocard/box |
Worth mentioning are the [[Snow biome]] and the [[Jungle]].
}}
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| name = Biomes
| text =
At the bottom of the world there is a special biome.
{{infocard/box | title = The Underworld | color = #ff6d26 | class = small |
The Underworld is the deepest layer of the world. It is a large, open cavern that stretches across the bottom of the world, with a ceiling of Ash Blocks and a lower terrain of large lava pools, Ash Blocks, and Hellstone. It also contains numerous Ruined Houses, which are natural structures containing unique furniture and loot. The Wall of Flesh boss can be summoned in the Underworld; defeating it will cause the world to convert to Hardmode.
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Biomes
| text =
At the bottom of the world there is a special biome.
{{infocard/box | title = The Underworld | color = #ff6d26 | class = small |
[[The Underworld]] is the deepest layer of the world. It is a large, open cavern that stretches across the bottom of the world, with a ceiling of Ash Blocks and a lower terrain of large lava pools, Ash Blocks, and Hellstone. It also contains numerous Ruined Houses, which are natural structures containing unique furniture and loot. The Wall of Flesh boss can be summoned in the Underworld; defeating it will cause the world to convert to Hardmode.
}}
}}
==== Nested boxes ====
<pre>{{ infocard
| name = Weapons
| text =
{{infocard/box | title = Melee weapons | color = melee |
These are some melee weapons.
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Swords |[[Copper Shortsword]], [[Meowmere]] }}
{{infocard/box | style = width: 250px | title = Spears |[[Trident]], [[Mushroom Spear]] }}
{{flexend}}
}}
{{infocard/box | title = Ranged weapons | color = ranged |
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Bows |[[Hellwing Bow]], [[Phantasm]] }}
{{infocard/box | style = width: 250px | title = Guns |[[Musket]], [[Shotgun]] }}
{{infocard/box | style = width: 250px | title = Launchers |[[Rocket Launcher]], [[Grenade Launcher]] }}
{{flexend}}
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| name = Weapons
| text =
{{infocard/box | title = Melee weapons | color = melee |
These are some melee weapons.
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Swords |[[Copper Shortsword]], [[Meowmere]] }}
{{infocard/box | style = width: 250px | title = Spears |[[Trident]], [[Mushroom Spear]] }}
{{flexend}}
}}
{{infocard/box | title = Ranged weapons | color = ranged |
{{flexstart|style=gap:var(--layout-gap)}}
{{infocard/box | style = width: 250px | title = Bows |[[Hellwing Bow]], [[Phantasm]] }}
{{infocard/box | style = width: 250px | title = Guns |[[Musket]], [[Shotgun]] }}
{{infocard/box | style = width: 250px | title = Launchers |[[Rocket Launcher]], [[Grenade Launcher]] }}
{{flexend}}
}}
}}
== Custom headings ==
It is possible to replicate the standard heading at the top of the infocard elsewhere inside it. The subtemplate used for this is {{tl|infocard/mainheading}}.
<code>{{(}} '''infocard/mainheading''' | ''<main heading text>'' | type = ''<smaller text above>'' | namenote = ''<smaller text after>'' | subname = ''<smaller text below>'' | color = ''<theme color>'' | icon = ''<icon file name>'' | iconalt = ''<custom icon display>'' | iconsize = ''<icon size>'' | iconclass = ''<custom CSS classes for icon>'' {{)}}</code>
These parameters are exactly like the ones used for {{tl|nl=y|infocard}} (except that {{tl|nl=y|infocard/mainheading}} also accepts an unnamed parameter 1, as an alternative for <code>$name</code>). See [[#Standard usage|above]] for their descriptions.
An additional helper subtemplate is {{tl|infocard/heading}}, which displays a simple, less prominent heading anywhere in the infocard.
=== Examples ===
See [[#Examples|above]] for more examples of heading variations.
<pre>{{ infocard
| text =
There are many important biomes.
{{infocard/mainheading | Forest biome }}
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
{{infocard/mainheading | Desert biome }}
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| text =
There are many important biomes.
{{infocard/mainheading | Forest biome }}
The [[Forest]] is a pure biome that comprises the majority of the surface world and is typically where the player initially spawns. The global landscape of a Forest includes lots of grass, plenty of trees, lakes of various sizes, and occasional hills that can reveal cave entrances. Forests often contain one or more Living Trees that sometimes have an underground treasure room.
{{infocard/mainheading | Desert biome }}
The [[Desert]] is a biome which consists predominantly of Sand Blocks and cacti. Every world contains one main Desert area and larger worlds may have additional patches of Desert. The main Desert houses the Underground Desert biome beneath it. Pyramids and small pools of water can rarely appear in Desert biomes. Objects in the Desert appear slightly hazy due to heat distortion, and water has a unique turquoise color. A Desert can also be generated with an Oasis mini-biome, featuring Palm trees and a large pool of water in the center.
}}
<hr style="margin-top:2em;margin-bottom:2em;">
<pre>{{ infocard
| class = compact
| text =
{{infocard/mainheading | Melee weapons | color = melee }}
{{infocard/box |
{{infocard/heading| Swords }}
[[Copper Shortsword]], [[Meowmere]]
{{infocard/heading| Spears }}
[[Trident]], [[Mushroom Spear]]
}}
{{infocard/mainheading | Ranged weapons | color = ranged | iconalt = {{transform|mirror=y|[[File:Vortex armor.png|x35px]]}} }}
{{infocard/box |
{{infocard/heading| Bows }}
[[Hellwing Bow]], [[Phantasm]]
{{infocard/heading| Guns }}
[[Musket]], [[Shotgun]]
{{infocard/heading| Launchers }}
[[Rocket Launcher]], [[Grenade Launcher]]
}}
}}</pre>
{{ infocard
| style = margin-top: 0.5em
| class = compact
| text =
{{infocard/mainheading | Melee weapons | color = melee }}
{{infocard/box |
{{infocard/heading| Swords }}
[[Copper Shortsword]], [[Meowmere]]
{{infocard/heading| Spears }}
[[Trident]], [[Mushroom Spear]]
}}
{{infocard/mainheading | Ranged weapons | color = ranged | iconalt = {{transform|mirror=y|[[File:Vortex armor.png|x35px]]}} }}
{{infocard/box |
{{infocard/heading| Bows }}
[[Hellwing Bow]], [[Phantasm]]
{{infocard/heading| Guns }}
[[Musket]], [[Shotgun]]
{{infocard/heading| Launchers }}
[[Rocket Launcher]], [[Grenade Launcher]]
}}
}}
== Start and end ==
For more complex and convoluted infocards, it is not practical to pass content to the template via the <code>$text</code>/<code>$intro</code>/<code>$outro</code> parameters. These have the usual limitations of template parameters, like pipes (<code>|</code>) and equals signs (<code>=</code>) having to be escaped, the post-expand include size being increased, etc. To circumvent these limitations, use the subtemplates {{tl|infocard/start}} and {{tl|infocard/end}}. The start subtemplate has the exact same parameters as the normal {{tl|nl=y|infocard}} and the end subtemplate has no parameters. Thanks to {{(}}[[#Custom headings|infocard/mainheading]]{{)}} and {{(}}[[#Custom boxes|infocard/box]]{{)}}, it is still possible to use headings and boxes in an infocard transcluded like this.
The regular way to transclude an infobox as described above would be this:
<pre>
{{infocard
| name = Guide
| text = The first NPC encountered by the player.
}}
</pre>
With start and end templates, it would look like this:
<pre>
{{infocard/start}}
{{infobox/mainheading|Guide}}
The first NPC encountered by the player.
{{infocard/end}}
</pre>
The output is identical.
Similar subtemplates exist for {{(}}[[#Custom boxes|infocard/box]]{{)}}: {{tl|infocard/box/start}} and {{tl|infocard/box/end}}. They similarly allow a more convoluted setup of a box in an infocard.
== Options ==
{{options/autodoc|note_box-css=Default css for {{tl|infocard/box}}.}}
== Subpages ==
<div style="-webkit-column-count:3;column-count:3;">
{{#dpl:
|namespace=Template
|titlematch=Infocard/%
|notcategorymatch=% translation
|nottitlematch=%/doc%
|ordermethod=title
|columns=3
}}
</div>
<noinclude>
</noinclude>
f50dec6dcc33ec8a1cbfa0d481f2106f53c0d8bc
Template:Infocard/heading
10
83
617
418
2024-02-21T23:39:17Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><div class="heading">{{{1|}}}</div></includeonly><noinclude>
{{internal subtemplate}}
</noinclude>
a53464063b3ac7bd0c847cba7ec4c83ddd9b50fe
Template:Infocard/initOptions
10
82
618
416
2024-02-21T23:41:30Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
-->{{options/init|infocard<!--
-->|key:size=250px<!--
-->|alias:cardsize=size<!--
-->|alias:minicardsize=size<!--
-->|key:class=<!--
-->|key:css=<!--
-->|alias:style=css<!--
-->|key:color=<!--
-->|key:theme=<!--
-->|key:box-css=<!--
-->|alias:box-style=box-css<!--
-->|key:box-class=<!--
-->}}<!--
--></includeonly><!--
--><noinclude>
{{options subtemplate}}
</noinclude>
362c7815a03d48410837fa977d8c9a7a665f0cf4
Template:Infocard/mainheading
10
84
619
420
2024-02-21T23:42:30Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
--><div class="main-heading" style="background:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color}}}}}}};border-right-color:{{#var:infocard:color_{{lc:{{{color|}}}}}|{{{color|{{#var:infocard:color}}}}}}};padding-right:{{{padding|0}}};{{{style|{{{css|}}}}}}"><!--
// display text
--><div class="hgroup"><!--
-->{{#if:{{{type|}}}|<div>{{{type}}}</div>}}<!--
--><div class="main"><!--
-->{{{1|{{{name|}}}}}}<!--
-->{{#if:{{{namenote|}}}|<span class="namenote"> {{{namenote}}}</span>}}<!--
--></div><!--
-->{{#if:{{{subname|}}}|<div>{{{subname}}}</div>}}<!--
--></div><!--
// display icon
// $icon and $iconalt might be set to blank values, e.g. when this template is called from {{infocard}} or {{infocard/start}}, hence the #or
-->{{#if:{{{icon|}}}{{{iconalt|}}}|<!--
--><div class="{{{iconclass|}}} icon clearfix" style="--iconsize: {{{iconsize|auto}}}">{{#or:{{{iconalt|}}}|[[File:{{{icon|}}}|link=]]}}</div><!--
-->}}<!--
--></div><!--
--></includeonly><!--
--><noinclude>
{{internal subtemplate}}
</noinclude>
e926eaa8b835328aa82d6f17df6f45531d742771
Template:IsNumber
10
76
620
404
2024-02-21T23:43:37Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly>{{#rmatch:{{{1|}}}|{{#if:{{bool|{{{onlypositive|}}}}}|^\d+$|^-?\d+$}}|y}}</includeonly><noinclude>{{doc}}
</noinclude>
e90d5984d357c1d9e986169cfd2f2bb2753cb628
Template:Options/autodoc
10
91
621
434
2024-02-22T00:00:42Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
-->{{#vardefine:options_namespace|{{#or:{{{1|}}}|{{lcfirst:{{ROOTPAGENAME}}}}}}}}<!-- "Chance" for "Template:Chance/doc"
-->{{#vardefine:__FLAG_OPTIONS_AUTODOC__|yes}}<!--
-->{{#ifeq:{{NAMESPACENUMBER}}|10| {{ {{#var:options_namespace}}/initOptions}} }}<!-- autoload
-->{{#ifeq:{{SUBPAGENAME}}|initOptions||
This template supports options through {{tl|options}} template. All valid options are listed below, see {{tl|options}} for usage and other infomation.
See [[Template:{{#var:options_namespace}}/initOptions]] for the initial options setting of this template.
}}
<table class="wikitable"><!--
--><tr><th>Name</th><th>Alias</th><th>Initial Value</th><th>Value Mapping<ref>Values with mapping will be stored and loaded as mapped value. Other values without mapping will be stored and loaded as-is.</ref></th><th>Note</th></tr><!--
-->{{#arrayprint:optionsKeys:{{#var:options_namespace}}||@@@@|<!--
--><tr>{{#var:optionsDoc:@@@@}}</td><td>{{{note_@@@@|}}}</td></tr><!--
-->}}</table><!--
-->{{reflist}}<!--
--></includeonly><noinclude>
Used to auto gen document for options.
See {{tl|options}} for more info. See [[Template:Chance/doc]] for example.
</noinclude>
39801ec48dc8b627b5bf699a319e72d91683bf6c
Template:Options/get
10
71
622
392
2024-02-22T00:01:19Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
$1: namespace, $2: key
$1 $2 are not trimmed for better performance.
auto init from {{<ns>/initOptions}}.
-->{{#if:{{#var:optionsInitialized:{{{1|}}}}}||{{#if:{{{1|}}}|{{#vardefine:_| {{ {{{1|}}}/initOptions }} }}}}}}<!--
get option value
-->{{#var:options:{{{1|}}}:{{#var:optionsAlias:{{{1|}}}:{{{2|}}}|<__invalid__>}}}}<!--
--></includeonly><noinclude>
example:
<pre>
{{options/get|namespace|foo}}
</pre>
See {{tl|options}} for more info.
</noinclude>
52060c738b3a8e45e6575c477ee97e53ad570af9
Template:Options/init
10
72
623
394
2024-02-22T00:01:55Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
set flag:
-->{{#vardefine:optionsInitialized:{{{1|}}}|y}}<!--
-->{{#vardefine:options:{{{1|}}}:<__invalid__>|{{error|Inexistent option key}}}}<!--
all $key=$default_value pairs
-->{{#vardefine:optionsKeys:{{{1|}}}|}}<!--
-->{{#forargs:key:|$key|$value|<!--
-->{{#vardefine:optionsKeys:{{{1|}}}|{{#var:optionsKeys:{{{1|}}}}}{{#var:$key}},}}<!-- append to key list
-->{{#vardefine:optionsAlias:{{{1|}}}:{{#var:$key}}|{{#var:$key}}}}<!-- register key alias (for better performance)
//default value:
-->{{#switch:{{#var:$value}}<!--
-->|(bool:true)=<!-- this option is bool type, for stored value: empty means true, nonempty means false.
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|}}<!-- default is empty
// input mapping: y/yes/on => (empty), n/no/off => n
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:y|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:yes|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:on|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:no|n}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:off|n}}<!--
-->|(bool:false)=<!-- this option is bool type, for stored value: empty means false, nonempty means true.
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|}}<!-- default is empty
// input mapping: y/yes/on => y, n/no/off => (empty)
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:yes|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:on|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:n|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:no|}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:off|}}<!--
-->|(bool)=<!-- this option is bool type, for stored value: "y" means true, "n" means false, other means undefined.
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|}}<!-- default is empty
// input mapping: y/yes/on => y, n/no/off => n
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:yes|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:on|y}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:no|n}}<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}:off|n}}<!--
-->|#default=<!--
-->{{#vardefine:options:{{{1|}}}:{{#var:$key}}|{{#var:$value}}}}<!--
-->}}<!--
-->}}<!--
-->{{#arraydefine:optionsKeys:{{{1|}}}|{{#var:optionsKeys:{{{1|}}}}}|,|unique}}<!--
key alias:
-->{{#forargs:alias:|$key|$value|<!--
-->{{#vardefine:optionsAlias:{{{1|}}}:{{#var:$key}}|{{#var:$value}}}}<!--
-->}}<!--
value alias:
-->{{#forargs:value:|$key|$value|<!--
-->{{#vardefine:optionsValueAlias:{{{1|}}}:{{#var:$key}}|{{#var:$value}}}}<!-- here $key is "name:value"
-->}}<!--
//make an init snapshot.
//don't use {{options/snap}} here to avoid template loop
-->{{#arrayprint:optionsKeys:{{{1|}}}||@@@@|<!--
-->{{#vardefine:optionsSnap:{{{1|}}}:__RESET__:@@@@|{{#var:options:{{{1|}}}:{{#var:optionsAlias:{{{1|}}}:@@@@|<__invalid__>}}}}}}<!--
-->}}<!--
==== doc mode: gen doc, table rows ====
-->{{#if:{{#var:__FLAG_OPTIONS_AUTODOC__}}|<!--
key name:
-->{{#arrayprint:optionsKeys:{{{1|}}}||@@@@|<!--
-->{{#vardefine:optionsDoc:@@@@|<td><code>@@@@</code></td><td>}}<!--
-->}}<!--
key alias:
-->{{#forargs:alias:|$key|$value|<!-- $key is alias, $value is origin key name.
-->{{#vardefine:optionsDoc:{{#var:$value}}|{{#var:optionsDoc:{{#var:$value}}}}<code>{{#var:$key}}</code><br/>}}<!--
-->}}<!--
initial value:
-->{{#arrayprint:optionsKeys:{{{1|}}}||@@@@|<!--
-->{{#vardefine:optionsDoc:@@@@|{{#var:optionsDoc:@@@@}}</td><td><code>{{#var:options:{{{1|}}}:@@@@|<i><small>(empty)</small></i>}}</code></td><td>}}<!--
-->}}<!--
value alias:
-->{{#forargs:value:|$key|$value|<!--
//here $key is "name:value"
-->{{#vardefine:_key|{{#explode:{{#var:$key}}|:|0|2}}}}<!--
-->{{#vardefine:_from|{{#explode:{{#var:$key}}|:|1|2}}}}<!--
-->{{#vardefine:optionsDoc:{{#var:_key}}|{{#var:optionsDoc:{{#var:_key}}}}<code>{{#var:_from}}</code> → <code>{{#var:$value|<i><small>(empty)</small></i>}}</code><br/>}}<!--
-->}}<!--
// (bool:true) and (bool:false)
-->{{#forargs:key:|$key|$value|<!--
-->{{#switch:{{#var:$value}}<!--
-->|(bool:true)=<!-- this option is bool type, for stored value: empty means true, nonempty means false.
// input mapping: y/yes/on => (empty), n/no/off => n
-->{{#vardefine:optionsDoc:{{#var:$key}}|{{#var:optionsDoc:{{#var:$key}}}}<!--
--><code>y</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>yes</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>on</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>no</code> → <code>n</code><br/><!--
--><code>off</code> → <code>n</code><br/><!--
-->}}<!--
-->|(bool:false)=<!-- this option is bool type, for stored value: empty means false, nonempty means true.
// input mapping: y/yes/on => y, n/no/off => (empty)
-->{{#vardefine:optionsDoc:{{#var:$key}}|{{#var:optionsDoc:{{#var:$key}}}}<!--
--><code>yes</code> → <code>y</code><br/><!--
--><code>on</code> → <code>y</code><br/><!--
--><code>n</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>no</code> → <code><i><small>(empty)</small></i></code><br/><!--
--><code>off</code> → <code><i><small>(empty)</small></i></code><br/><!--
-->}}<!--
-->|(bool)=<!-- this option is bool type, for stored value: "y" means true, "n" means false, other means undefined.
// input mapping: y/yes/on => y, n/no/off => n
-->{{#vardefine:optionsDoc:{{#var:$key}}|{{#var:optionsDoc:{{#var:$key}}}}<!--
--><code>yes</code> → <code>y</code><br/><!--
--><code>on</code> → <code>y</code><br/><!--
--><code>no</code> → <code>n</code><br/><!--
--><code>off</code> → <code>n</code><br/><!--
-->}}<!--
-->|#default=<!-- nothing
-->}}<!--
-->}}<!--
-->{{#vardefine:__FLAG_OPTIONS_AUTODOC__|}}<!-- reset flag
-->}}<!--
--></includeonly><noinclude>
example:
<pre>
{{options/init|item<!--
-->|key:icons=yes<!-- default value of "icons" option is "yes"
-->|key:small=no<!-- default value of "small" option is "no"
-->|value:small:n=no<!-- value "n" for "small" is same as "no", {{options/set|item|small=n}} is same as {{options/set|item|small=no}}
-->|key:style=<!-- default value of "style" is empty value.
-->|alias:css=style<!-- "css" is an alias of "style", so {{options|item|css}} is same as {{options|item|style}}
-->|key:wrap=(bool:true)<!-- bool value, default value is empty, empty value means true, nonempty value means false
-->|key:nolink=(bool:false)<!-- default value is empty, e, nonempty value means false
-->}}
</pre>
See {{tl|options}} for more info.
</noinclude>
5e78eaab0fbed580f1feddd2c919e57f501f6b46
Template:Reflist
10
78
624
408
2024-02-22T00:03:13Z
Lukkram
396381
wikitext
text/x-wiki
<div class="reflist <!--
-->{{#if:{{{1|}}}{{{colwidth|}}}|reflist-columns references-column-width}} <!--
-->{{#switch:{{{liststyle|{{{group|}}}}}}|upper-alpha|upper-roman|lower-alpha|lower-greek|lower-roman=reflist-{{{liststyle|{{{group}}}}}}}} <!--
-->{{#if:{{{1|}}}|{{#iferror:{{#ifexpr: {{{1|1}}} > 1 }}||{{#switch:{{{1|}}}|1=|2=reflist-columns-2|#default=reflist-columns-3}} }}}}" <!-- end class
-->{{#if: {{{1|}}}<!-- start style -->
| {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }} |style="column-width: {{{1}}};"}}
| {{#if: {{{colwidth|}}}|style="column-width: {{{colwidth}}};"}}
}} <!--
-->{{#if:{{{css|{{{style|}}}}}}|style="{{{css|{{{style|}}}}}}"}}>
{{#tag:references|{{{refs|}}}|group={{{group|}}}|responsive={{#if:{{{1|}}}{{{colwidth|}}}|0|1}}}}</div><noinclude>
{{doc}}
</noinclude>
f75dcd46463f6f3c9eb64c3eccc4c44443cd2ccf
Template:Tl
10
73
625
396
2024-02-22T00:09:50Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
-->{{#vardefine:tl:nolink|{{bool|{{{nl|}}}}}}}<!--
-->{{#if:{{bool|{{{code|}}}}}|<code>}}<!--
-->{{(}}<!--
-->{{#uesc:{{#rmatch:{{{1|}}}|^#(\s*(\w+?)\s*)(:(.*)${{!}}$)|<esc><!--
// parser functions
-->{{#vardefine:tl:parserf_link|}}<!--
-->{{#vardefine:tl:parserf_link|{{tl/parser function links|$2}}}}<!-- get link to doc page
--><nowiki/>#<!--
-->{{#if:{{#var:tl:nolink}}{{#if:{{#var:tl:parserf_link}}||y}}|<!--
--><span title="#$1:">$1</span><!--
-->|<!--
--><span class=plainlinks>[{{tl/parser function links|$2}}##$2 $1]</span><!--
-->}}<!--
-->:$4<!--
--></esc>|<!--
// templates
-->{{#if:{{#var:tl:nolink}}{{ifexists|Template:{{{1}}}|3=n}}|<!--
--><span title="{{ns:Template}}:{{ucfirst:{{{1}}}}}">{{{1}}}</span><!--
-->|<!--
-->[[Template:{{{1}}}|{{{1}}}]]<!--
-->}}<!--
-->}}}}<!--
-->{{#or:<!--
-->{{#dplreplace:{{{__paramslist|}}}|/₪/|{{!}}}}<!--
-->|<!--
-->{{#fornumargs:k|v|<!--
-->{{#ifexpr:{{#var:k}}!=1|<!-- skip first parameter
-->{{!}}{{#var:v}}<!--
-->}}<!--
-->}}<!--
-->}}<!--
-->{{)}}<!--
-->{{#if:{{bool|{{{code|}}}}}|</code>}}<!--
--></includeonly><!--
--><noinclude>
{{doc}}
</noinclude>
2e5a712f87d51fcebaa777bb264e9843e32f96ee
Template:Transform
10
86
626
424
2024-02-22T00:13:53Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly><!--
// assemble a string of transformations by iterating over all parameters in order
-->{{#vardefine:transform:style|<!--
-->{{#forargs:|parametername|parametervalue|<!--
-->{{#switch:{{#var:parametername}}<!--
-->|flip= scaleY(-1)<!--
-->|mirror= scaleX(-1)<!--
-->|rotation= rotate({{#var:parametervalue}}deg)<!--
-->|scale= scale({{#var:parametervalue}},{{#var:parametervalue}})<!--
-->}}<!--
-->}}<!--
-->}}<!--
// output
--><div style="{{{style|}}}; display: {{{display|inline-block}}}; -moz-transform: {{#var:transform:style}}; -ms-transform: {{#var:transform:style}}; -o-transform: {{#var:transform:style}}; -webkit-transform: {{#var:transform:style}}; transform: {{#var:transform:style}}">{{{1}}}</div><!--
--></includeonly><noinclude>
{{doc}}
</noinclude>
aede34d45aa0e1285621bfba0d86d04f82d4c0cd
Trailmakers
0
44
627
599
2024-02-22T00:29:12Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
[[Category:Trailmakers| ]]
c6d4fff0962b4ff3180b06941e915d59e8d795c2
679
627
2024-02-28T11:07:58Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{Infobox start}}
{{Infobox header
| name = Test
| image = keyart.jpg
| description = keyart
}}
{{Infobox section|Testy}}
{{Infobox row|label1|test1}}
{{Infobox row|label2|test2}}
{{Infobox end}}
{{Flexend}}
[[Category:Trailmakers| ]]
791c85488173e59f738a369a35eae92e809e1e86
680
679
2024-02-28T11:16:21Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{Infobox start}}
{{Infobox header
| name = Test
| wideimage = keyart.jpg
| description = keyart
}}
{{Infobox section|Testy}}
{{Infobox row|label1|test1}}
{{Infobox row|label2|test2}}
{{Infobox end}}
{{Flexend}}
[[Category:Trailmakers| ]]
117f5d83dc0401ecf94532bd6af1b10ef7e7b31d
685
680
2024-02-28T12:29:27Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{GPI
|title=
|image=keyart.jpg
|caption=tseting
|powercores=
|weight=20
|size=1x1x1
|power=
|hp=10
|aero=red
}}
{{Flexend}}
{{Flexstart|inline}}
{{Infobox start}}
{{Infobox header
| name = Test
| wideimage = keyart.jpg
| description = keyart
}}
{{Infobox section|Testy}}
{{Infobox row|label1|test1}}
{{Infobox row|label2|test2}}
{{Infobox end}}
{{Flexend}}
[[Category:Trailmakers| ]]
bf02ee67aecfc7eebfb788055437cf5878d01b62
689
685
2024-02-28T12:35:43Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{GPI
|title=
|image=keyart.jpg
|caption=tseting
|powercores=
|weight=20
|size=1x1x1
|power=
|dmg=
|hp=10
|aero=red
}}
{{Flexend}}
{{Flexstart|inline}}
{{Infobox start}}
{{Infobox header
| name = Test
| wideimage = keyart.jpg
| description = keyart
}}
{{Infobox section|Testy}}
{{Infobox row|label1|test1}}
{{Infobox row|label2|test2}}
{{Infobox end}}
{{Flexend}}
[[Category:Trailmakers| ]]
1b072536a108af7a17c834011af6d52d3fb0d713
690
689
2024-02-28T12:36:20Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{GPI
|title=
|image=keyart.jpg
|caption=testing
|weight=20
|size=1x1x1
|hp=10
|aero=red
}}
{{Flexend}}
{{Flexstart|inline}}
{{Infobox start}}
{{Infobox header
| name = Test
| wideimage = keyart.jpg
| description = keyart
}}
{{Infobox section|Testy}}
{{Infobox row|label1|test1}}
{{Infobox row|label2|test2}}
{{Infobox end}}
{{Flexend}}
[[Category:Trailmakers| ]]
f91a9092d959e5c9b486350231631c68699b8478
693
690
2024-02-28T13:02:29Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{GPI
|title=
|image=keyart.jpg
|caption=testing
|forblocks=Properties
|powercores=1
|weight=20
|size=1x1x1
|power=333
|hp=10
|aero=red
}}
{{Flexend}}
{{Flexstart|inline}}
{{Infobox start}}
{{Infobox header
| name = Test
| wideimage = keyart.jpg
| description = keyart
}}
{{Infobox section|Testy}}
{{Infobox row|label1|test1}}
{{Infobox row|label2|test2}}
{{Infobox end}}
{{Flexend}}
[[Category:Trailmakers| ]]
111c9138ba27a96066605c8855d4dc726820b13c
699
693
2024-02-28T14:07:18Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{GPI
|title=
|image=keyart.jpg
|caption=testing
{{GPIblocks
|powercores=1
|weight=20
|size=1x1x1
|power=333
|dmg=
|hp=25
|aero=red
|other=
}}
}}
{{Flexend}}
[[Category:Trailmakers| ]]
29739cf1cf94ab7e0d821aa80950544e887277bc
701
699
2024-02-28T14:19:04Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{GPIblocks
|title=test
|image=keyart.jpg
|caption=keyart
|powercores=10
|weight=20
|size=1x1x1
|power=333
|dmg=
|hp=25
|aero=red
|other=
|description= a simple test to test this thing
}}
{{Flexend}}
[[Category:Trailmakers| ]]
3a007f0b788633b6840d3a6b174aaf021edffa2c
707
701
2024-02-28T20:33:19Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{GPIblocks
|title=test
|image=keyart.jpg
|caption=keyart
|powercores=10
|weight=20
|size=1x1x1
|power=333
|dmg=
|hp=25
|aero=red
|other= hello there
|description= a simple test to test this thing
}}
{{Flexend}}
[[Category:Trailmakers| ]]
27d1e6b186355268f80deb98b8638f78e7c5f142
709
707
2024-02-28T20:34:04Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{GPIblocks
|title=test
|image=keyart.jpg
|caption=keyart
|powercores=10
|weight=20
|size=1x1x1
|power=333
|dmg=
|hp=25
|aero=red
|other=
|description= a simple test to test this thing
}}
{{Flexend}}
[[Category:Trailmakers| ]]
3a007f0b788633b6840d3a6b174aaf021edffa2c
710
709
2024-02-28T20:37:15Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{GPIblocks
|title=test
|image=keyart.jpg
|caption=keyart
|powercores=
|weight=20
|size=1x1x1
|power=
|dmg=
|hp=25
|aero=red
|other=
|description= a simple test to test this thing
}}
{{Flexend}}
[[Category:Trailmakers| ]]
341496169fb43755411a14415db799fca47c0c8a
711
710
2024-02-28T20:42:54Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{GPIblocks
|title=test
|image=keyart.jpg
|caption=keyart
|powercores=3
|weight=20
|size=1x1x1
|power=333
|dmg=
|hp=25
|aero=red
|other= hello there
|description= a simple test to test this thing
}}
{{Flexend}}
[[Category:Trailmakers| ]]
c76b965177f25e1b3781c7b3c27637a294887f97
715
711
2024-02-28T21:11:46Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{GPIblocks
|title=test
|image=keyart.jpg
|caption=keyart
|powercores=3
|weight=20
|size=1x1x1
|power=333
|dmg=
|hp=25
|aero=red
|other= hello there
|about= a simple test to test this thing
}}
{{Flexend}}
[[Category:Trailmakers| ]]
da7914584fe7dca010fbaa044cedba46df4b60b5
717
715
2024-02-28T21:12:54Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{GPIblocks
|title=test
|image=keyart.jpg
|caption=keyart
|powercores=3
|weight=20
|size=1x1x1
|power=333
|dmg=
|hp=25
|aero=red
|other= hello there
|about=
}}
{{Flexend}}
[[Category:Trailmakers| ]]
7bd6f4b43097a53a2fe2bb017dd606a88a5428e7
718
717
2024-02-28T21:13:45Z
Lukkram
396381
wikitext
text/x-wiki
{{stub}}
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{GPIblocks
|title=test
|image=keyart.jpg
|caption=keyart
|powercores=3
|weight=20
|size=1x1x1
|power=333
|dmg=
|hp=25
|aero=red
|other= hello there
|about= small thingy for description
}}
{{Flexend}}
[[Category:Trailmakers| ]]
8f4eeeaeb1e0173a25168fd7e8a84c27c319d395
731
718
2024-03-02T14:58:25Z
Lukkram
396381
wikitext
text/x-wiki
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{PIblock
|title= Testing
|image=SA_01.png
|caption=little text
|weight=10kg
|size=2x2x2
|hp=60
|aero=none
|other= epic stuff
|about= little box for a little description
}}
{{Flexend}}
[[Category:Trailmakers| ]]
5042ef373340ddf49df762c2e14797db3399e6ae
732
731
2024-03-02T14:58:51Z
Lukkram
396381
wikitext
text/x-wiki
{{Flexstart|inline}}
{{InfoboxGame
|title=
|image=keyart.jpg
|caption=Game keyart
|developer=Flashbulb
|publisher=Flashbulb
|release=
|platform=PC
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Testing
|image=SA_01.png
|caption=little text
|weight=10kg
|size=2x2x2
|hp=60
|aero=none
|other= epic stuff
|about= little box for a little description
}}
{{Flexend}}
[[Category:Trailmakers| ]]
6b108e19e8a43484c0da14de17390d2a8654a8b5
Template:Doc
10
90
649
602
2024-02-28T10:24:56Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly>{| class="article-table" style="width:100%;"
|- style="font-size:18px;"
! Template documentation follows
|-
| ''Note: the template above may sometimes be partially or fully invisible.''
|-
| Visit [[Template:{{PAGENAMEE}}/doc]] to edit this documentation. ([[Template:Documentation|How does this work?]])
|}
<div style="margin:0 1em;">
{{{{PAGENAME}}/doc}}</div></includeonly><noinclude>{{doc}}[[Category:Template documentation| ]]</noinclude>
693fc2c5bedce938cf038952928753140ca8ac6f
Template:Doc/end
10
163
651
650
2024-02-28T10:24:56Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly></div>
<div class="doc-footer"><!--
-->{{#ifeq: {{SUBPAGENAME}} | doc |<!--
--><p style="margin: 0">This is the documentation page, it should be transcluded into the main template page. See [[Template:Doc]] for more information.</p>[[Category:Template documentation|{{BASEPAGENAME}}]] |<!--
--><p class="plainlinks" style="margin: 0">The above documentation is transcluded from [[{{FULLPAGENAME}}/doc]]. <small>([{{fullurl:{{FULLPAGENAME}}/doc|action=edit}} edit] | [{{fullurl:{{FULLPAGENAME}}/doc|action=history}} history])</small></p> }}<!--
--></div></includeonly><noinclude>[[Category:Documentation templates| {{PAGENAME}}]]</noinclude>
5901ae94ecaa54ca3b42da5f7715eb719863acd6
Template:Doc/start
10
164
653
652
2024-02-28T10:24:56Z
Lukkram
396381
1 revision imported
wikitext
text/x-wiki
<includeonly><!--
-->{{#vardefine: nodoc | {{{nodoc}}} }}<!--
-->{{#vardefine: baddoc | {{{baddoc}}} }}<!--
-->{{#if: {{{1|}}} | {{#ifeq: {{SUBPAGENAME}} | doc | | <div style="height: 1em; clear: both; margin-top: 5px;"></div> }} }}<!--
--><div class="doc">
<div class="doc-header"><!--
-->[[File:Template-{{#if: {{{nodoc|}}} | no | {{#if: {{{baddoc|}}} | bad }} }}info.png|50px|bottom|link=]] <span style="font-weight: bold; font-size: 125%;">Documentation</span><!--
--><div class="plainlinks" style="float: right; margin-left: 5px">[[{{fullurl:{{FULLPAGENAME}}|action=purge}} purge]]</div></div><!--
-->{{#if: {{{nodoc|}}} | '''This template has no documentation. If you know how to use this template, please add some.'''<!--
-->{{#ifeq: {{SUBPAGENAME}} | doc | | [[Category:Templates with no documentation|{{BASEPAGENAME}}]]}} |<!--
-->{{#if: {{{baddoc|}}} | '''This template's documentation has been marked as bad. Please improve or add to it.'''<!--
-->{{#ifeq: {{SUBPAGENAME}} | doc | | [[Category:Templates with bad documentation|{{BASEPAGENAME}}]]}}<!--
-->}} }}</includeonly><noinclude>[[Category:Documentation templates| {{PAGENAME}}]]</noinclude>
109c2325259817970f752e7c6d44c7d91164d6c5
Category:Infobox part templates
14
172
668
2024-02-28T10:31:07Z
Lukkram
396381
Created page with "Templates used for the creation of infoboxes by parts"
wikitext
text/x-wiki
Templates used for the creation of infoboxes by parts
8e421beb23c7d4449d9e00c87d61727a85cfa6d7
MediaWiki:Common.css
8
137
681
571
2024-02-28T11:38:29Z
Westgrass
40
css
text/css
@import url(https://commons.wiki.gg/MediaWiki:wikigg.css?action=raw&ctype=text/css);
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #C3A300FF;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: none;
--pi-padding: 2px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.97), rgba(20, 44, 60, 0.97));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffd500;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.quicklinks {
font-size: 18px;
}
#mainpage-wrap .box.quicklinks .content {
display: flex;
gap: 2em;
flex-wrap: wrap;
}
#mainpage-wrap .box.quicklinks .content > div {
padding: 0.75em 1.5em;
border: 1px solid var(--theme-link-color);
}
.slider {
margin: 1em auto;
width: 100%;
max-width: 100%;
overflow: hidden;
position: relative;
text-align: left;
}
.slider > .prev, .slider > .next {
display: block;
width: 30px;
height: 30px;
background: rgba(255, 255, 255, 0.6);
position: absolute;
top: 50%;
transform: translateY(-50%);
cursor: pointer;
border-radius: 100%;
}
.slider > .prev:before, .slider > .next:before {
content: "";
display: block;
width: 14px;
height: 14px;
margin: 8px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath id='aarow-tiny' d='M5 11a.997.997 0 0 1-.707-.293l-4-4A.983.983 0 0 1 0 6.003v-.006a.988.988 0 0 1 .293-.704l4-4a.999.999 0 1 1 1.414 1.414L3.414 5H11a1 1 0 1 1 0 2H3.414l2.293 2.293A.999.999 0 0 1 5 11'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: #333;
}
.slider > .prev {
left: 6px;
}
.slider > .next {
right: 6px;
}
.slider > .next:before {
transform: scaleX(-1);
}
.slider ul {
height: 100%;
margin: 0;
transition: transform 0.3s;
}
.slider li {
display: grid;
position: absolute;
margin: 0;
width: 100%;
height: 100%;
background-size: var(--image-resize-mode);
background-position: center center;
background-repeat: no-repeat;
}
.slider li img, .slider li > a {
display: block;
place-self: center center;
width: 100% !important;
height: 100% !important;
opacity: 0;
}
.slider li > span {
position: absolute;
left: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.75);
color: white;
display: block;
width: 100%;
box-sizing: border-box;
padding: 8px;
font-size: 12px;
}
.slider li > span b {
display: block;
font-size: 14px;
}
.slider li > span a {
display: block;
color: #fff;
font-weight: bold;
}
@media (min-width: 640px) {
.slider li > span a {
position: absolute;
right: 8px;
top: 50%;
transform: translateY(-50%);
}
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
7f6ede8d02561ccc2d17275158345715d1e9d4a0
704
681
2024-02-28T20:29:02Z
Lukkram
396381
css
text/css
@import url(https://commons.wiki.gg/MediaWiki:wikigg.css?action=raw&ctype=text/css);
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #C3A300FF;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: rgba(255,255,255,0.08);
--pi-padding: 2px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.97), rgba(20, 44, 60, 0.97));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffd500;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
border-radius: 3px;
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
border-radius: 3px;
margin-top: 3px;
margin-left: 2px;
margin-right: 2px;
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.quicklinks {
font-size: 18px;
}
#mainpage-wrap .box.quicklinks .content {
display: flex;
gap: 2em;
flex-wrap: wrap;
}
#mainpage-wrap .box.quicklinks .content > div {
padding: 0.75em 1.5em;
border: 1px solid var(--theme-link-color);
}
.slider {
margin: 1em auto;
width: 100%;
max-width: 100%;
overflow: hidden;
position: relative;
text-align: left;
}
.slider > .prev, .slider > .next {
display: block;
width: 30px;
height: 30px;
background: rgba(255, 255, 255, 0.6);
position: absolute;
top: 50%;
transform: translateY(-50%);
cursor: pointer;
border-radius: 100%;
}
.slider > .prev:before, .slider > .next:before {
content: "";
display: block;
width: 14px;
height: 14px;
margin: 8px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath id='aarow-tiny' d='M5 11a.997.997 0 0 1-.707-.293l-4-4A.983.983 0 0 1 0 6.003v-.006a.988.988 0 0 1 .293-.704l4-4a.999.999 0 1 1 1.414 1.414L3.414 5H11a1 1 0 1 1 0 2H3.414l2.293 2.293A.999.999 0 0 1 5 11'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: #333;
}
.slider > .prev {
left: 6px;
}
.slider > .next {
right: 6px;
}
.slider > .next:before {
transform: scaleX(-1);
}
.slider ul {
height: 100%;
margin: 0;
transition: transform 0.3s;
}
.slider li {
display: grid;
position: absolute;
margin: 0;
width: 100%;
height: 100%;
background-size: var(--image-resize-mode);
background-position: center center;
background-repeat: no-repeat;
}
.slider li img, .slider li > a {
display: block;
place-self: center center;
width: 100% !important;
height: 100% !important;
opacity: 0;
}
.slider li > span {
position: absolute;
left: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.75);
color: white;
display: block;
width: 100%;
box-sizing: border-box;
padding: 8px;
font-size: 12px;
}
.slider li > span b {
display: block;
font-size: 14px;
}
.slider li > span a {
display: block;
color: #fff;
font-weight: bold;
}
@media (min-width: 640px) {
.slider li > span a {
position: absolute;
right: 8px;
top: 50%;
transform: translateY(-50%);
}
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border-radius: 6px;
overflow: hidden;
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
a22185e637dd4a69f8157188182f17f794cc0e42
713
704
2024-02-28T21:07:28Z
Lukkram
396381
css
text/css
@import url(https://commons.wiki.gg/MediaWiki:wikigg.css?action=raw&ctype=text/css);
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #C3A300FF;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: rgba(255,255,255,0.08);
--pi-padding: 2px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.97), rgba(20, 44, 60, 0.97));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffd500;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
border-radius: 3px;
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
border-radius: 3px;
border-color: #f000;
margin-top: 3px;
margin-left: 2px;
margin-right: 2px;
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.quicklinks {
font-size: 18px;
}
#mainpage-wrap .box.quicklinks .content {
display: flex;
gap: 2em;
flex-wrap: wrap;
}
#mainpage-wrap .box.quicklinks .content > div {
padding: 0.75em 1.5em;
border: 1px solid var(--theme-link-color);
}
.slider {
margin: 1em auto;
width: 100%;
max-width: 100%;
overflow: hidden;
position: relative;
text-align: left;
}
.slider > .prev, .slider > .next {
display: block;
width: 30px;
height: 30px;
background: rgba(255, 255, 255, 0.6);
position: absolute;
top: 50%;
transform: translateY(-50%);
cursor: pointer;
border-radius: 100%;
}
.slider > .prev:before, .slider > .next:before {
content: "";
display: block;
width: 14px;
height: 14px;
margin: 8px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath id='aarow-tiny' d='M5 11a.997.997 0 0 1-.707-.293l-4-4A.983.983 0 0 1 0 6.003v-.006a.988.988 0 0 1 .293-.704l4-4a.999.999 0 1 1 1.414 1.414L3.414 5H11a1 1 0 1 1 0 2H3.414l2.293 2.293A.999.999 0 0 1 5 11'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: #333;
}
.slider > .prev {
left: 6px;
}
.slider > .next {
right: 6px;
}
.slider > .next:before {
transform: scaleX(-1);
}
.slider ul {
height: 100%;
margin: 0;
transition: transform 0.3s;
}
.slider li {
display: grid;
position: absolute;
margin: 0;
width: 100%;
height: 100%;
background-size: var(--image-resize-mode);
background-position: center center;
background-repeat: no-repeat;
}
.slider li img, .slider li > a {
display: block;
place-self: center center;
width: 100% !important;
height: 100% !important;
opacity: 0;
}
.slider li > span {
position: absolute;
left: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.75);
color: white;
display: block;
width: 100%;
box-sizing: border-box;
padding: 8px;
font-size: 12px;
}
.slider li > span b {
display: block;
font-size: 14px;
}
.slider li > span a {
display: block;
color: #fff;
font-weight: bold;
}
@media (min-width: 640px) {
.slider li > span a {
position: absolute;
right: 8px;
top: 50%;
transform: translateY(-50%);
}
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border-radius: 6px;
overflow: hidden;
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
0da7c5c6bc811f5219040ab52a9b64396e4e2f92
719
713
2024-02-28T21:30:15Z
Lukkram
396381
css
text/css
@import url(https://commons.wiki.gg/MediaWiki:wikigg.css?action=raw&ctype=text/css);
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #C3A300FF;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: rgba(255,255,255,0.08);
--pi-padding: 4px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.97), rgba(20, 44, 60, 0.97));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffd500;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
border-radius: 3px;
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
border-radius: 3px;
border-color: #f000;
margin-top: 3px;
margin-left: 2px;
margin-right: 2px;
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.quicklinks {
font-size: 18px;
}
#mainpage-wrap .box.quicklinks .content {
display: flex;
gap: 2em;
flex-wrap: wrap;
}
#mainpage-wrap .box.quicklinks .content > div {
padding: 0.75em 1.5em;
border: 1px solid var(--theme-link-color);
}
.slider {
margin: 1em auto;
width: 100%;
max-width: 100%;
overflow: hidden;
position: relative;
text-align: left;
}
.slider > .prev, .slider > .next {
display: block;
width: 30px;
height: 30px;
background: rgba(255, 255, 255, 0.6);
position: absolute;
top: 50%;
transform: translateY(-50%);
cursor: pointer;
border-radius: 100%;
}
.slider > .prev:before, .slider > .next:before {
content: "";
display: block;
width: 14px;
height: 14px;
margin: 8px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath id='aarow-tiny' d='M5 11a.997.997 0 0 1-.707-.293l-4-4A.983.983 0 0 1 0 6.003v-.006a.988.988 0 0 1 .293-.704l4-4a.999.999 0 1 1 1.414 1.414L3.414 5H11a1 1 0 1 1 0 2H3.414l2.293 2.293A.999.999 0 0 1 5 11'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: #333;
}
.slider > .prev {
left: 6px;
}
.slider > .next {
right: 6px;
}
.slider > .next:before {
transform: scaleX(-1);
}
.slider ul {
height: 100%;
margin: 0;
transition: transform 0.3s;
}
.slider li {
display: grid;
position: absolute;
margin: 0;
width: 100%;
height: 100%;
background-size: var(--image-resize-mode);
background-position: center center;
background-repeat: no-repeat;
}
.slider li img, .slider li > a {
display: block;
place-self: center center;
width: 100% !important;
height: 100% !important;
opacity: 0;
}
.slider li > span {
position: absolute;
left: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.75);
color: white;
display: block;
width: 100%;
box-sizing: border-box;
padding: 8px;
font-size: 12px;
}
.slider li > span b {
display: block;
font-size: 14px;
}
.slider li > span a {
display: block;
color: #fff;
font-weight: bold;
}
@media (min-width: 640px) {
.slider li > span a {
position: absolute;
right: 8px;
top: 50%;
transform: translateY(-50%);
}
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border-radius: 6px;
overflow: hidden;
border: 1px solid var(--pi-border-color);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
c86c4353c29ad3d4651130cdc2f0877a6c07fd70
720
719
2024-03-01T16:40:29Z
Lukkram
396381
css
text/css
@import url(https://commons.wiki.gg/MediaWiki:wikigg.css?action=raw&ctype=text/css);
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #C3A300FF;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: rgba(255,255,255,0.08);
--pi-padding: 4px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.97), rgba(20, 44, 60, 0.97));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffd500;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
border-radius: 3px;
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
border-radius: 3px;
border-color: #f000;
margin-top: 3px;
margin-left: 2px;
margin-right: 2px;
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.quicklinks {
font-size: 18px;
}
#mainpage-wrap .box.quicklinks .content {
display: flex;
gap: 2em;
flex-wrap: wrap;
}
#mainpage-wrap .box.quicklinks .content > div {
padding: 0.75em 1.5em;
border: 1px solid var(--theme-link-color);
}
.slider {
margin: 1em auto;
width: 100%;
max-width: 100%;
overflow: hidden;
position: relative;
text-align: left;
}
.slider > .prev, .slider > .next {
display: block;
width: 30px;
height: 30px;
background: rgba(255, 255, 255, 0.6);
position: absolute;
top: 50%;
transform: translateY(-50%);
cursor: pointer;
border-radius: 100%;
}
.slider > .prev:before, .slider > .next:before {
content: "";
display: block;
width: 14px;
height: 14px;
margin: 8px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath id='aarow-tiny' d='M5 11a.997.997 0 0 1-.707-.293l-4-4A.983.983 0 0 1 0 6.003v-.006a.988.988 0 0 1 .293-.704l4-4a.999.999 0 1 1 1.414 1.414L3.414 5H11a1 1 0 1 1 0 2H3.414l2.293 2.293A.999.999 0 0 1 5 11'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: #333;
}
.slider > .prev {
left: 6px;
}
.slider > .next {
right: 6px;
}
.slider > .next:before {
transform: scaleX(-1);
}
.slider ul {
height: 100%;
margin: 0;
transition: transform 0.3s;
}
.slider li {
display: grid;
position: absolute;
margin: 0;
width: 100%;
height: 100%;
background-size: var(--image-resize-mode);
background-position: center center;
background-repeat: no-repeat;
}
.slider li img, .slider li > a {
display: block;
place-self: center center;
width: 100% !important;
height: 100% !important;
opacity: 0;
}
.slider li > span {
position: absolute;
left: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.75);
color: white;
display: block;
width: 100%;
box-sizing: border-box;
padding: 8px;
font-size: 12px;
}
.slider li > span b {
display: block;
font-size: 14px;
}
.slider li > span a {
display: block;
color: #fff;
font-weight: bold;
}
@media (min-width: 640px) {
.slider li > span a {
position: absolute;
right: 8px;
top: 50%;
transform: translateY(-50%);
}
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ccc;
}
.theme-dark .tabber__tab:visited {
color: #ccc;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border-radius: 6px;
overflow: hidden;
border: 1px solid var(--pi-border-color);
}
.pi-smart-data-value:not(:first-child) {
border-color: #f000
}
.portable-infobox .pi-border-color {
border-color:rgba(255,213,0,0.25);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
b3bbfb0870aadc5ee81b2c042635da888c11206e
726
720
2024-03-02T14:09:49Z
Lukkram
396381
css
text/css
@import url(https://commons.wiki.gg/MediaWiki:wikigg.css?action=raw&ctype=text/css);
/***********************************************************************************************************
* css reset for browser default rules and MediaWiki internal rules
***********************************************************************************************************/
* {
outline: 0;
}
table {
white-space: unset; /* be set to `no-wrap` in MW internal css */
}
html {
font-size: 16px; /* reset rem size */
}
body {
overflow-y: unset;
}
pre {
margin: 0;
}
h1, h2, h3, h4, h5, h6 {
padding: 0;
border: 0 solid transparent;
}
table {
display: table;
white-space: unset;
}
body, code {
background: none;
}
/***********************************************************************************************************
* theming vars.
***********************************************************************************************************/
:root {
/*** top site logo ***/
--theme-site-logo-image: url(/images/e/e6/Site-logo.png);
--theme-site-logo-filter: drop-shadow(0 0 10px rgba(0,0,0, 0.5));
--theme-site-logo-width: 982px;
--theme-site-logo-height: 110px;
/*** site background ***/
--theme-site-background: #9fbcc4 url(/images/8/80/Site-background.jpg) center center / cover no-repeat fixed;
/* common "box" style */
--theme-box-back-backdrop-filter: none;
--theme-box-border-radius: 0px;
--theme-box-border-width: 0px;
--theme-box-border-style: solid;
--theme-box-border-color: #c3a300;
--theme-box-shadow: none;
--theme-box-shadow2: none;
--theme-box-back-background: rgba(255,255,255,0);
/* be used in multi-layer background, so we can't simpy use background-color */
--theme-box-background: linear-gradient(rgba(255,255,255,0.94),rgba(255,255,255,0.94));
--theme-background: var(--theme-box-background), var(--theme-box-back-background);
/*** text color ***/
--theme-text-color: #000;
--theme-text-color-hover: var(--theme-text-color);
--theme-text-color-note: #666;
--theme-text-color-em: #14853a;
--theme-heading-color: var(--theme-text-color);
--theme-text-color-placeholder: #808080;
--theme-control-text-color: #333;
--theme-control-text-color-hover: #333;
/*** link text color ***/
--theme-link-color: #0a6fa6;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-redlink: #bf0017;
--theme-link-color-focus: var(--theme-link-color);
/* default color for icons */
--theme-icon-color: var(--theme-link-color);
--theme-icon-color-redlink: var(--theme-link-color-redlink);
--theme-icon-color-hover: var(--theme-link-color-hover);
/* default common color */
--theme-border-color: #cecece;
--theme-border-color-accent: #C3A300FF;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
/* dropdown menu */
--theme-dropdown-border: 0px solid var(--theme-box-border-color);
--theme-dropdown-background: rgba(255,255,255,0.95);
--theme-dropdown-backdrop-filter: blur(5px);
/* for wide table */
--theme-wide-table-shadow-color: #999;
/** notification **/
--theme-notice-red-text-color: #ff001f;
--theme-notice-orange-text-color: #ffab5b;
/* portable infobox */
--pi-background: none;
--pi-border-color: var(--theme-box-border-color);
--pi-secondary-background: rgba(255,255,255,0.15);
--pi-secondary-background--label: var(--theme-text-color);
--pi-item-spacing: 1px 0px;
--pi-label-text-color: var(--theme-text-color);
--pi-label-background: rgba(255,255,255,0.08);
--pi-padding: 4px;
}
:root.theme-dark {
--theme-site-background: #003a4c url(/images/c/c4/Site-background-dark.jpg) top center / cover no-repeat fixed;
}
:root.theme-dark {
--theme-box-border-color: #ffd500;
--theme-box-background: linear-gradient(rgba(20, 44, 60, 0.97), rgba(20, 44, 60, 0.97));
}
:root.theme-dark {
--theme-text-color: #fff;
--theme-text-color-note: #ccc;
--theme-text-color-em: #00f600;
}
:root.theme-dark {
--theme-link-color: #00c0ff;
--theme-link-color-redlink: #dd001a;
}
:root.theme-dark {
--theme-border-color: rgba(255,255,255, 0.15);
--theme-border-color-accent: #ffd500;
--theme-highlight-background: rgba(255, 213, 0, 0.25);
}
/* content box */
/* main article content box (without top heading) */
/* sidebar */
#mw-panel {
--theme-text-color: #fff;
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-border-width: 1px;
--theme-border-color: rgba(255,255,255,.1);
--theme-gap: 0;
--theme-background: rgba(15, 33, 45, 0.9);
--theme-heading-color: #ffd500;
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#catlinks {
--theme-background: none;
--theme-box-border-radius: 0;
}
#footer {
--theme-background: rgba(15, 33, 45, 0.9);
--theme-text-color: #ccc;
--theme-link-color: #00c0fe;
--theme-link-color-hover: var(--theme-link-color);
--theme-link-color-visited: var(--theme-link-color);
}
/* navbar */
#mw-head {
--theme-link-color: #fff;
--theme-link-color-visited: var(--theme-link-color);
--theme-link-color-hover: var(--theme-link-color);
--theme-icon-color: #ffd500;
--theme-icon-color-hover: var(--theme-icon-color);
--theme-background: rgba(15, 33, 45, 0.9);
--theme-background-shadow: none;
--theme-tab-background: none;
--theme-tab-background-selected: none;
--theme-tab-color-selected: #ffd500;
--theme-tab-color-selected-hover: #ffd500;
--theme-tab-border-color: transparent;
--theme-tab-border-color-selected: var(--theme-box-border-color);
--theme-dropdown-background: rgba(15, 33, 45, 0.9);
}
#mw-head #p-search {
--theme-border-color: var(--theme-box-border-color);
--theme-link-color: var(--theme-text-color);
--theme-background: var(--theme-box-background);
--theme-border-color-hover: var(--theme-icon-color-hover);
--theme-border-color-focus: var(--theme-border-color-hover);
--theme-shadow: none;
--theme-shadow-focus: var(--theme-box-shadow);
}
/* search result suggestion */
body > .suggestions {
--theme-border-color: var(--theme-box-border-color);
--theme-rule-color: var(--theme-border-color);
--theme-link-color: var(--theme-text-color);
--theme-link-color-visited: var(--theme-text-color);
--theme-link-color-hover: var(--theme-text-color-hover);
}
.gallery {
--theme-gap-x: 6px;
--theme-gap-y: 6px;
}
.thumb {
--theme-box-border-radius: 0;
}
/***********************************************************************************************************
* base css styles for both interface and content box: font, color, etc.
***********************************************************************************************************/
/** Font **/
html, body {
font-family: Helvetica, Arial, sans-serif;
color: var(--theme-text-color);
}
html {
background: var(--theme-site-background);
}
body {
font-size: 14px;
line-height: 1.5;
}
ul, ol {
margin: 2px 0 2px 1.5em;
}
li {
margin: 0 0 2px 0;
}
pre, code, .mw-code {
color: var(--theme-text-color);
border: 1px solid var(--theme-border-color);
background: var(--theme-background);
}
/** link color **/
body a, body a.external, body a.extiw, .mw-parser-output a, .mw-parser-output a.external, .mw-parser-output a.extiw {
text-decoration: none;
color: var(--theme-link-color);
}
body a:visited, body a.external:visited, body a.extiw:visited, .mw-parser-output a:visited, .mw-parser-output a.external:visited, .mw-parser-output a.extiw:visited {
color: var(--theme-link-color-visited);
}
body a:hover, body a:active, body a.external:hover, body a.external:active, body a.extiw:hover, body a.extiw:active, .mw-parser-output a:hover, .mw-parser-output a:active, .mw-parser-output a.external:hover, .mw-parser-output a.external:active, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:active {
text-decoration: underline;
color: var(--theme-link-color-hover);
}
body a.selflink:hover, body a.selflink:active, .mw-parser-output a.selflink:hover, .mw-parser-output a.selflink:active {
/* Self-links aren't real links, they're not clickable.
* Hence, they shouldn't change color when hovered over like real links, as that is counter-intuitive.
* We should not use :not(.selflink) since it increases the priority and make it is difficult to override
* link styles for certain elements (e.g. in wiki.gg header).
*/
text-decoration: none;
color: var(--theme-link-color);
}
body a.new, body a.new:visited, .mw-parser-output a.new, .mw-parser-output a.new:visited {
/** red link **/
/* we don't really need to mark you have "visited" an inexistent page */
color: var(--theme-link-color-redlink);
}
/*********************************************************************************************************/
input, button {
color: var(--theme-control-text-color);
}
input[type=submit] {
color: var(--theme-control-text-color);
}
::placeholder {
color: var(--theme-text-color-placeholder);
}
/* Removes VisualEdit button */
#ca-ve-edit {
display: none;
}
/* Text color */
.i .note,
.note-text {
color: var(--theme-text-color-note);
}
em {
color: var(--theme-text-color-em);
}
.pixel img, .pixel,
#mw-imagepage-section-filehistory img {
image-rendering: pixelated; /*for chrome*/
image-rendering: crisp-edges; /*for firefox*/
}
.small {
font-size: 85%;
}
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/* References smaller text than main */
.references {
font-size: 90%;
}
/* Larger font for Module: code display (default is smaller than other code pages) */
pre.lua.source-lua {
font-size: 14px !important;
}
/* Facilitate inline scary transclusion */
.scary-transclusion p, .scary-transclusion .mw-parser-output {
display: inline;
}
/* hide last empty paragraph at the end */
div.mw-parser-output > p:last-child > br:only-child {
display: none;
}
/* Fix empty parameter descriptions on api.php having no height, causing misalignments that seriously impede readability */
.apihelp-parameters dd:empty::before {
content: " ";
}
.block {
display: block;
}
.inline {
display: inline;
}
.inline-block {
display: inline-block;
}
hr.space {
height: 4px;
background: none;
border: 0;
}
.page-content .vertical-align-top * {
vertical-align: top;
}
.page-content .vertical-align-bottom * {
vertical-align: bottom;
}
/* Drowning Table No Border */
.drowning-table-no-border {
border: none;
}
/* Gadget description length */
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-top > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header,
.oo-ui-fieldLayout.oo-ui-labelElement.oo-ui-fieldLayout-align-inline > .oo-ui-fieldLayout-body {
max-width: unset;
}
/* Box at the top of all pages when the user has a new message on their User_talk: page */
.usermessage {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
/***********************************************************************************************************
* interface layout and styles for widgets outside of content box
***********************************************************************************************************/
:root {
--layout-topbar-height: 35px; /* height of wiki.gg topbar */
--layout-sidebar-width: 180px; /* width of side navbar, without gap */
--layout-sidespace: 12px; /* whitespace width on most left and most right */
--layout-content-width: minmax(0,1fr);
--layout-box-gap: 12px;
--layout-logo-scale: 0.5;
--layout-logo-width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
--layout-logo-height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 5);
--dropdown-item-padding-x: 12px;
--dropdown-item-padding-y: 4px;
}
@media screen and (min-width: 1740px) {
:root {
--layout-sidespace: minmax(0,1fr); /* whitespace width on most left and most right */
--layout-content-width: 1500px;
}
}
/**** Main Layout START ***********************************************************/
/**
* Note: wiki.gg topbar is position:fixed. So we don't need to consider it in grid layout
*/
html, body {
min-height: 100%;
}
html {
height: 100%;
scroll-padding-top: calc(var(--layout-topbar-height) + 10px);
}
body {
height: auto;
}
/*** main grid container ***/
body {
/* self */
box-sizing: border-box;
/* grid */
display: grid;
grid-template-columns: [body-left] var(--layout-sidespace) [aside-left] var(--layout-sidebar-width) [aside-right nav-left content-left footer-left] var(--layout-content-width) [nav-right content-right footer-right] var(--layout-sidespace) [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end nav-start aside-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [aside-end page-end] 0fr [body-end];
gap: 0 var(--layout-box-gap);
}
/*** grid items ***/
/* Flatten DOM structure. Therefore we have following grid items under body grid container:
* div#mw-page-base, div#mw-head-base, #mw-navigation>h2, div#mw-head, div#mw-panel, div#content.mw-body, div#footer, footer.
*/
body > .content-wrapper,
#mw-navigation {
display: contents;
}
/** unused, hide them **/
#mw-head-base,
#mw-navigation > h2 {
display: none;
}
/** side nav bar **/
#mw-panel {
grid-column: aside-left/aside-right;
grid-row: aside-start/aside-end;
margin-bottom: var(--layout-box-gap);
float: none;
width: unset;
padding: 0;
}
/** nav **/
#mw-head {
grid-column: nav-left/nav-right;
grid-row: nav-start/nav-end;
}
/** content **/
.mw-body {
grid-column: content-left/content-right;
grid-row: content-start/content-end;
}
/* For some page such as api.php, .mw-body is the only child, so take up all space. */
.mw-body:first-child {
grid-column: body-left/body-right;
grid-row: page-start/page-end;
}
/** #footer: content footer **/
#footer {
grid-column: footer-left/footer-right;
grid-row: footer-start/footer-end;
margin: 0;
z-index: 0;
}
/** used to gen box shadow for main box (nav + content + #footer) **/
#mw-page-base {
grid-column: content-left/content-right;
grid-row: nav-start/footer-end;
height: 100%;
}
/** wiki.gg footer bar **/
body > footer {
grid-column: body-left/body-right;
grid-row: page-end/body-end;
}
/*** logo block. It is absolute position ***/
#p-logo {
position: absolute;
width: 100%;
height: var(--layout-logo-box-height);
left: 0;
top: var(--layout-topbar-height);
background: var(--theme-site-logo-image) center center/var(--layout-logo-width) auto no-repeat;
margin-top: 0;
display: flex;
align-items: center;
justify-content: center;
filter: var(--theme-site-logo-filter);
}
/* use logo image as <a>'s background will sometime flicker when hovered on Firefox,
* I still don't know why, but move background to #p-logo can avoid this issue.
*/
#p-logo .mw-wiki-logo {
width: var(--layout-logo-width);
height: var(--layout-logo-height);
margin: auto;
background: none; /* logo flicker fix */
}
/**** Main Layout END ***********************************************************/
/********* side panel START *********/
#mw-panel {
--list-body-font-size: 14px;
--list-body-padding-x: 6px;
--list-body-padding-y: 3px;
}
#mw-panel #t-print {
display: none;
}
#mw-panel a {
text-decoration: none;
}
/* section box */
#mw-panel .portal {
margin: 0 0 var(--layout-box-gap) 0;
padding: 0;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
}
#mw-panel .portal .vector-menu-heading {
/* section heading */
background: none;
margin: 0;
padding: 6px 10px;
font-size: 16px;
line-height: 18px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
color: var(--theme-heading-color);
}
/* show the heading of first section */
#mw-panel #p-logo + .portal .vector-menu-heading {
display: flex;
}
/* arrow icon */
#mw-panel .portal .vector-menu-heading::after {
content: "";
display: block;
background: none;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px;
margin-top: 2px;
flex: 0 0 auto;
}
#mw-panel .portal .vector-menu-heading:hover::after {
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: scaleY(-1);
}
/* list body */
#mw-panel .portal .body {
background: none;
border: 0;
padding: 0;
margin: 0;
border-top: var(--theme-border-width) solid var(--theme-border-color);
}
#mw-panel .portal .body ul {
padding: var(--theme-gap) 4px 4px;
}
#mw-panel .portal .body li {
margin: 0;
padding: 0;
font-size: var(--list-body-font-size);
line-height: inherit;
}
#mw-panel .portal .body li:hover {
background: var(--theme-highlight-background);
}
#mw-panel .portal .body li a {
display: block;
padding: var(--list-body-padding-y) var(--list-body-padding-x);
color: var(--theme-link-color);
}
#mw-panel .portal .body li a:visited {
color: var(--theme-link-color-visited);
}
#mw-panel .portal .body li a:hover {
color: var(--theme-link-color-hover);
}
/* "Atom" RSS Feed */
#mw-panel .portal .body li a.feedlink {
text-indent: calc(var(--list-body-font-size) + 2px);
background-position: var(--list-body-padding-x) center; /* align icon with other text */
}
/********* side panel END *********/
/********* main content box *********/
/**** background box for nav+content+#footer ****/
#mw-page-base {
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-box-back-background);
z-index: -1;
}
#mw-head, #content, #footer {
box-sizing: border-box;
background-clip: padding-box;
border: var(--theme-box-border-width) solid transparent;
margin: 0;
}
#mw-head {
border-bottom-width: 0;
}
#content {
border-top-width: 0;
border-bottom-width: 0;
}
#footer {
border-top-width: 0;
}
/****** navbar (#mw-head) ******/
/* reset */
#mw-head * {
float: unset;
font-size: unset;
line-height: unset;
}
/* tabs layout */
#mw-head {
--layout-padding: 12px;
--layout-gap: 6px;
--tab-padding-x: 12px;
--tab-padding-y: 5px;
--icon-size: 1em;
padding: 6px 0 0 0;
background: var(--theme-background);
position: relative;
display: flex;
justify-content: space-between;
align-items: stretch;
border-bottom: 2px solid var(--theme-box-border-color);
}
#mw-head #left-navigation, #mw-head #right-navigation {
float: none;
flex: 1 1 auto;
margin: 0;
display: flex;
align-items: flex-end;
}
#mw-head #left-navigation::before, #mw-head #left-navigation::after, #mw-head #right-navigation::before, #mw-head #right-navigation::after {
content: "";
display: block;
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
}
#mw-head #left-navigation {
justify-content: flex-start;
}
#mw-head #right-navigation {
justify-content: flex-end;
}
#mw-head #left-navigation::before, #mw-head #right-navigation::after {
flex: 0 0 var(--layout-padding);
}
#mw-head #left-navigation::after, #mw-head #right-navigation::before {
flex: 1 1 auto;
}
/*** tabs of navbar ***/
/* reset */
#mw-head .vector-menu,
#mw-head .vector-menu * {
background: none;
}
/* tabs list */
#mw-head .vector-menu-tabs {
height: unset;
padding: unset;
}
#mw-head .vector-menu-tabs .vector-menu-content-list {
display: flex;
align-items: flex-end;
}
/* tab */
#mw-head {
--theme-tab-border-style: solid;
--theme-tab-border-width: 0px;
--theme-border-bottom-style: solid;
--theme-border-bottom-width: 3px;
--theme-border-bottom-color: transparent;
--theme-border-bottom-color-selected: var(--theme-tab-border-color-selected);
}
#mw-head .vector-menu-tabs .mw-list-item,
#mw-head .vector-menu-dropdown {
/* outer box */
background: var(--theme-tab-background);
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
position: relative;
margin-right: var(--layout-gap); /* make space for gap */
}
#mw-head .vector-menu-tabs .mw-list-item::after,
#mw-head .vector-menu-dropdown::after {
/* gap */
content: "";
display: block;
width: var(--layout-gap);
height: 100%;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
position: absolute;
left: 100%;
bottom: calc(0px - var(--theme-border-bottom-width));
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* inner box */
height: auto;
margin: 0;
padding: var(--tab-padding-y) var(--tab-padding-x);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color);
border-bottom: 0;
border-radius: var(--theme-box-border-radius);
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
color: var(--theme-link-color);
background: var(--theme-background-shadow);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover {
color: var(--theme-link-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a.new,
#mw-head .vector-menu-dropdown .vector-menu-heading.new {
color: var(--theme-link-color-redlink);
}
#mw-head .vector-menu-tabs .mw-list-item.selected {
/* outer box: selected */
background: var(--theme-tab-background-selected);
border: var(--theme-tab-border-width) var(--theme-tab-border-style) var(--theme-tab-border-color-selected);
border-bottom: 0;
--theme-link-color: var(--theme-tab-color-selected);
--theme-link-color-hover: var(--theme-tab-color-selected-hover);
--theme-icon-color: var(--theme-tab-color-selected);
--theme-icon-color-hover: var(--theme-tab-color-selected-hover);
}
#mw-head .vector-menu-tabs .mw-list-item.selected:after {
/* gap */
bottom: 0;
padding-left: var(--theme-tab-border-width); /* x-position offset */
}
#mw-head .vector-menu-tabs .mw-list-item.selected a {
/* inner box: selected */
border: 0;
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color-selected);
background: none;
color: var(--theme-tab-color-selected);
}
/* dropdown menu*/
#mw-head .vector-menu-dropdown .vector-menu-heading {
/* tab label */
position: relative;
display: flex;
align-items: center;
gap: 3px;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
/* arrow icon */
background: none;
opacity: unset;
content: "";
display: block;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 6px 5px 0;
margin-top: 2px;
}
#mw-head .vector-menu-dropdown:hover .vector-menu-heading::after {
/* .vector-menu-heading is covered by .vector-menu-checkbox, therefore we can't use .vector-menu-heading:hover::after */
border-color: var(--theme-icon-color-hover) transparent;
}
#mw-head .vector-menu-dropdown .vector-menu-content {
/* dropdown list body */
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
left: 0; /* reset */
}
#mw-head .vector-menu-dropdown .vector-menu-content ul {
padding: 4px;
}
#mw-head .vector-menu-dropdown .vector-menu-content li:hover {
background: var(--theme-highlight-background);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a {
display: block;
padding: var(--dropdown-item-padding-y) var(--dropdown-item-padding-x);
text-decoration: none;
color: var(--theme-link-color);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:visited {
color: var(--theme-link-color-visited);
}
#mw-head .vector-menu-dropdown .vector-menu-content li a:hover {
color: var(--theme-link-color-hover);
}
/* watch/unwatch star */
#mw-head .vector-menu-tabs .mw-watchlink.icon a {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a span {
display: none;
}
#mw-head .vector-menu-tabs .mw-watchlink.icon a::before {
transform-origin: 50% calc(var(--icon-size) / 2 * 1.125);
}
#mw-head .vector-menu-tabs #ca-watch.icon {
/* line star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Zm-7.34,6-1.17.86.44,1.38,2.09,6.41-5.45-4L16,21.46l-1.18.86-5.45,4,2.09-6.41.44-1.38-1.17-.86-5.45-4h8.19l.45-1.38L16,5.89l2.08,6.4.45,1.38h8.19Z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-head .vector-menu-tabs #ca-unwatch.icon {
/* solid star */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M28.61,11.67H20l-2.66-8.2a1.39,1.39,0,0,0-2.64,0L12,11.67H3.39a1.39,1.39,0,0,0-.82,2.51l7,5.07L6.89,27.46a1.39,1.39,0,0,0,1.32,1.82A1.43,1.43,0,0,0,9,29l7-5.07L23,29a1.43,1.43,0,0,0,.81.27,1.39,1.39,0,0,0,1.32-1.82l-2.66-8.21,7-5.07A1.39,1.39,0,0,0,28.61,11.67Z'/%3E%3C/g%3E%3C/svg%3E");
}
/*** search form ***/
#mw-head #p-search {
/* navbar common border bottom */
border-bottom: var(--theme-border-bottom-width) var(--theme-border-bottom-style) var(--theme-border-bottom-color);
background: var(--theme-background-shadow);
margin: 0;
align-self: stretch;
}
#mw-head #p-search form {
margin: 0;
}
#mw-head #p-search .vector-search-box-inner {
border-width: 1px;
border-style: solid;
border-color: var(--theme-border-color);
border-radius: 2px;
}
#mw-head #p-search .vector-search-box-inner:hover {
border-color: var(--theme-border-color-hover);
}
#mw-head #p-search .vector-search-box-inner:focus-within {
border-color: var(--theme-border-color-focus);
box-shadow: var(--theme-shadow-focus);
}
#mw-head #p-search .vector-search-box-input {
border: 0;
color: var(--theme-text-color);
background: var(--theme-background);
box-shadow: var(--theme-shadow);
height: 26px;
padding: 0 26px 0 4px;
}
#mw-head #p-search .vector-search-box-input:focus {
outline: 0;
box-shadow: none;
z-index: 1100; /* .suggestions: 1099 */
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
z-index: 1101;
}
#mw-head #p-search .vector-search-box-input::placeholder {
color: var(--theme-text-color-note);
}
#mw-head #p-search .mw-searchButton {
opacity: 0;
}
#mw-head #p-search .searchButton {
width: 26px;
min-width: unset;
opacity: 1;
background-image: none;
--mask: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E search %3C/title%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 1 1 3 8a5 5 0 0 1 10 0z'/%3E%3C/svg%3E%0A") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 18px 18px;
mask-size: 18px 18px;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-link-color);
}
#mw-head #p-search #searchform:hover .searchButton {
background-color: var(--theme-link-color-hover);
}
#mw-head #p-search .vector-search-box-input:focus ~ .searchButton {
background-color: var(--theme-link-color-focus);
}
/*** search result suggestions ***/
.suggestions {
background: var(--theme-background);
box-sizing: border-box;
margin-top: 0;
box-shadow: var(--theme-box-shadow);
backdrop-filter: var(--theme-box-back-backdrop-filter);
}
.suggestions .suggestions-results,
.suggestions .suggestions-special {
background: none;
}
.suggestions .suggestions-results {
border: 1px solid var(--theme-border-color);
border-top: 0;
border-bottom-color: var(--theme-rule-color);
}
.suggestions .suggestions-results:empty {
border-bottom: 0;
}
.suggestions .suggestions-result,
.suggestions .suggestions-special .special-label,
.suggestions .suggestions-special .special-query {
color: var(--theme-text-color);
}
.suggestions .suggestions-result {
padding: 1px 4px;
}
.suggestions .suggestions-special {
margin: 0;
padding: 2px 4px 4px;
border: 1px solid var(--theme-border-color);
border-top: 0;
border-radius: var(--theme-box-border-radius);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--theme-link-color);
}
.suggestions .suggestions-result-current {
background: var(--theme-highlight-background);
color: var(--theme-link-color-hover);
}
.suggestions .suggestions-result-current .special-label, .suggestions .suggestions-result-current .special-query {
color: var(--theme-link-color-hover);
}
/**** main content box ****/
/* font */
.vector-body {
font-size: unset; /* reset */
line-height: 1.7142857143;
}
/** layout **/
#content {
color: var(--theme-text-color);
padding: 0;
display: flex;
flex-direction: column;
background: var(--theme-box-background);
--theme-heading-rule-color-h1: var(--theme-border-color);
--theme-heading-rule-color-h2: var(--theme-border-color);
--layout-padding-x: 24px;
--layout-padding-y: 16px;
}
.content-body {
flex: 1 1 auto;
}
.content-body > main {
align-self: stretch;
padding: var(--layout-padding-y) var(--layout-padding-x);
}
#bodyContent {
display: flex;
flex-direction: column;
position: unset;
}
/** main heading section **/
#firstHeading {
overflow: hidden; /* override mw internal css, fix scroll-x issue for narrow width */
}
/** the " < rootpage < page " crumb **/
#contentSub, #contentSub2 {
margin: 0;
color: var(--theme-text-color-note);
font-size: 12px;
line-height: 20px;
}
#contentSub .subpages {
color: transparent;
line-height: 20px;
font-size: 0;
}
#contentSub .subpages a {
font-size: 12px;
vertical-align: middle;
display: inline-flex;
align-items: center;
padding-left: 4px;
}
#contentSub .subpages a::before {
content: "";
display: inline-block;
height: 4px;
width: 4px;
border-color: var(--theme-icon-color);
border-style: solid;
border-width: 0 0 2px 2px;
margin: 0 2px 0 0;
transform: rotate(45deg);
}
#contentSub::after {
/* the spacing and line between heading section and content body box */
content: "";
display: block;
height: 0;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
margin-top: 4px;
margin-bottom: var(--layout-padding-y);
}
/** content body box **/
#mw-content-text {
flex: 1 1 auto;
min-height: 30em;
}
/*** "category:" box ***/
#catlinks {
background: var(--theme-background);
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
margin: var(--layout-padding-y) 0 0 0;
padding: 0.5em 1em;
}
/*** ads ***/
div.games-showcase-header {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0;
}
div.games-showcase-footer {
margin: 0;
padding: 0 var(--layout-padding-x) var(--layout-padding-y);
}
.content-body > .games-showcase-sidebar {
margin: 0;
padding: var(--layout-padding-y) var(--layout-padding-x) 0 0;
}
.games-showcase-header img, .games-showcase-footer img {
height: 100%;
width: auto;
object-fit: contain;
}
@media screen and (max-width: 1100px) {
.games-showcase-header img, .games-showcase-footer img {
height: auto !important;
width: 100% !important;
object-fit: contain;
}
}
@media screen and (max-width: 926px) {
.games-showcase-header img, .games-showcase-footer img {
object-position: 50%;
height: 105px !important;
width: 100% !important;
object-fit: none !important;
}
}
aside.games-showcase-sidebar div.sidebar-showcase {
padding: 0 0 var(--layout-padding-y) 0;
}
/**** #footer (copyright info) ****/
#footer {
background: var(--theme-background);
padding: 16px 24px;
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
position: relative;
/* grid */
display: grid;
grid-template-columns: [l] 1fr 0fr [r];
grid-template-rows: [t] auto auto [b];
z-index: 0; /* covered by content */
font-size: 12px;
border-top: 3px solid var(--theme-box-border-color);
}
.mw-footer li {
color: var(--theme-text-color);
}
#footer a {
color: var(--theme-link-color);
}
#footer a:hover {
color: var(--theme-link-color-hover);
}
#footer-info {
display: contents;
}
#footer ul li {
font-size: inherit;
line-height: 1.5;
padding: 0;
}
#footer-icons {
grid-column: span 1/r;
grid-row: t/b;
place-self: end;
}
#footer #footer-info-lastmod {
grid-column: l/span 1;
grid-row: t/span 1;
place-self: start;
margin-bottom: 1em;
}
#footer #footer-info-copyright {
grid-column: l/span 1;
grid-row: span 1/b;
place-self: end stretch;
position: relative;
padding-right: 100px;
}
#footer-info-copyright img {
position: absolute;
right: 0;
bottom: 0;
height: 31px;
width: auto;
}
#footer-places > * {
margin-top: 1em;
}
/****** responsive Layout ******/
@media screen and (max-width: 1365px) {
/* change layout */
body {
grid-template-columns: [body-left] 0 [aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right] 0 [body-right];
grid-template-rows: [body-start] var(--layout-topbar-height) [page-start logo-start] var(--layout-logo-box-height) [logo-end aside-start] auto [aside-end nav-start] 0fr [nav-end content-start] auto [content-end footer-start] 0fr [footer-end] 1fr [page-end] 0fr [body-end];
}
/* re-style navbar */
#mw-panel {
display: flex;
align-items: flex-end;
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
padding: 0 var(--layout-box-gap);
/* Make #p-logo be positioned relative to #mw-panel. By this way, we can safely apply filter/backdrop-filter on #mw-panel */
position: relative;
z-index: 1;
}
#mw-panel .portal {
background: none;
box-shadow: none;
border: 0;
margin: 0;
padding: 0;
position: relative;
}
#mw-panel .portal .vector-menu-heading {
margin: 0;
transform: unset;
padding: 9px 12px;
border: 0;
border-radius: 0;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
border-width: 6px 5px 0; /* change arrow direction */
margin-left: 4px;
}
#mw-panel .portal.collapsed .vector-menu-heading::after {
transform: none;
}
#mw-panel .portal .body {
display: none !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: absolute;
left: 0;
top: 100%;
width: max-content;
min-width: 8em;
border: var(--theme-dropdown-border);
border-radius: var(--theme-box-border-radius);
background: var(--theme-dropdown-background);
backdrop-filter: var(--theme-box-back-backdrop-filter);
border-top-left-radius: 0;
border-top-right-radius: 0;
}
#mw-panel .portal .body ul {
padding: 4px;
}
#mw-panel .portal .body li a {
padding: 6px 12px;
}
#mw-panel .portal.expanded .vector-menu-heading, #mw-panel .portal:hover .vector-menu-heading {
background: var(--theme-highlight-background);
border-radius: 0;
}
#mw-panel .portal.expanded .vector-menu-heading::after, #mw-panel .portal:hover .vector-menu-heading::after {
transform: scaleY(-1);
}
#mw-panel .portal.expanded .body, #mw-panel .portal:hover .body {
display: block !important;
}
/* search: move to sidebar nav box ("main nav bar") */
#mw-head #p-search {
padding: var(--layout-padding);
border-bottom: 0;
position: absolute;
right: 0;
top: calc(-56px - var(--theme-box-border-width) * 2); /* offset */
z-index: 2;
background: none;
}
.vector-search-box-inner {
width: 20em;
max-width: unset;
min-width: unset;
}
#mw-head #right-navigation #p-cactions {
margin-right: 0;
}
/* logo: smaller, and position relative to #mw-panel */
#p-logo {
background-size: calc(var(--theme-site-logo-width) * var(--layout-logo-scale)) auto;
top: calc(0px - var(--layout-logo-box-height) - var(--theme-box-border-width));
}
#p-logo .mw-wiki-logo {
width: calc(var(--theme-site-logo-width) * var(--layout-logo-scale));
height: calc(var(--theme-site-logo-height) * var(--layout-logo-scale));
}
/* "more" menu in #right-navigation */
#mw-head #right-navigation .vector-menu-dropdown {
margin-right: 0;
}
#mw-head #right-navigation .vector-menu-dropdown::after {
display: none;
}
#mw-head #right-navigation .vector-menu-dropdown .vector-menu-content {
left: auto;
right: 0;
}
} /* screen and (max-width: 1365px) */
@media screen and (max-width: 900px) {
:root {
--layout-logo-scale: calc(1/3);
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 4);
}
/* change layout */
body {
grid-template-columns: [body-left aside-left nav-left content-left footer-left] var(--layout-content-width) [content-right aside-right nav-right footer-right body-right];
}
#mw-page-base,
#mw-panel,
#mw-head, #content, #footer {
border-radius: 0;
border-left: 0;
border-right: 0;
}
.mw-indicators {
z-index: auto;
}
} /* screen and (max-width:900px) */
@media screen and (max-width: 720px) {
#p-logo {
width: 100%;
left: 0;
}
#mw-panel {
box-shadow: var(--theme-box-shadow2);
display: block;
height: calc(34px + var(--theme-box-border-width) * 2);
}
#mw-panel .portal {
box-sizing: border-box;
display: none;
box-shadow: none;
background: var(--theme-background);
backdrop-filter: var(--theme-dropdown-backdrop-filter);
border-left: var(--theme-dropdown-border);
border-right: var(--theme-dropdown-border);
margin: 0;
border-radius: 0;
}
#mw-panel .portal .vector-menu-heading {
padding: 0 12px 4px;
border: 0;
display: block;
background: none;
}
#mw-panel .portal .vector-menu-heading::after {
display: none;
}
#mw-panel .portal:hover .vector-menu-heading {
background: none;
color: var(--theme-heading-color);
}
#mw-panel .portal .body {
display: block !important; /* !important is required, since there is inline-css from sidebar collapse/expand */
position: unset;
border: 0;
background: none;
backdrop-filter: none;
padding: 4px 12px;
width: 100%;
box-sizing: border-box;
}
#mw-panel .portal .body ul {
padding: 0;
display: flex;
flex-wrap: wrap;
justify-content: unset;
}
#mw-panel .portal .body li a {
padding: 4px 8px;
white-space: nowrap;
}
#mw-panel .portal:last-child {
padding-bottom: 12px;
border-bottom: var(--theme-dropdown-border);
border-radius: 0 0 var(--theme-box-border-radius) var(--theme-box-border-radius);
}
#mw-panel .menu-toggle {
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-category-2' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M14 4h6v6h-6z'%3E%3C/path%3E%3Cpath d='M4 14h6v6h-6z'%3E%3C/path%3E%3Cpath d='M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3Cpath d='M7 7m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
cursor: pointer;
display: block;
flex: 0 0 auto;
width: 24px;
height: 24px;
margin: 5px 12px;
}
#mw-panel .menu-toggle.expanded ~ .portal {
display: block;
}
#mw-panel .menu-toggle + .portal {
padding-top: 12px;
border-top: var(--theme-dropdown-border);
}
#mw-head #p-search {
box-shadow: none;
padding: 0;
top: calc(-43px - var(--theme-box-border-width) * 2); /* offset */
left: auto;
right: 12px;
width: auto;
z-index: 3;
}
.vector-search-box-inner {
width: 100vw;
max-width: 20em;
}
#content {
--layout-padding-x: 12px;
--layout-padding-y: 12px;
}
/* icon navbar tabs */
#mw-head {
top: unset; /* reset */
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E");
--icon-size: 1.5em;
}
#mw-head .vector-menu-tabs .mw-list-item a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
--theme-link-color-hover: var(--theme-icon-color-hover);
width: 1.5em; /* same as line height */
height: 1.5em;
box-sizing: content-box;
padding: var(--tab-padding-y);
color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/
}
#mw-head .vector-menu-tabs .mw-list-item a::before,
#mw-head .vector-menu-dropdown .vector-menu-heading::before {
content: "";
display: block;
position: unset;
background-image: none;
width: var(--icon-size);
height: var(--icon-size);
margin: calc((1.5em - var(--icon-size)) / 2);
--mask: var(--icon) no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-icon-color);
}
#mw-head .vector-menu-tabs .mw-list-item a:hover::before,
#mw-head .vector-menu-dropdown .vector-menu-heading:hover::before {
background-color: var(--theme-icon-color-hover);
}
#mw-head .vector-menu-tabs .mw-list-item a span,
#mw-head .vector-menu-dropdown .vector-menu-heading span {
display: none;
}
#mw-head .vector-menu-dropdown .vector-menu-heading::after {
display: none;
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-edit {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M29.12,6.05,26,2.88a3,3,0,0,0-4.24,0L6.29,18.29a3.06,3.06,0,0,0-.72,1.18L2.08,29.92l10.46-3.49a3.15,3.15,0,0,0,1.17-.72L29.12,10.29a3,3,0,0,0,0-4.24Zm-21,13.28,8.75-8.74,1.58,1.58L9.67,20.92ZM18.24,9.17l1.59-1.58,4.58,4.58-1.58,1.59ZM7.1,21.19l3.72,3.71L5.25,26.75Zm5.57,2.73-1.59-1.59,8.75-8.74,1.58,1.58Zm15-15-1.88,1.88L21.24,6.17l1.88-1.88A1,1,0,0,1,23.83,4a1,1,0,0,1,.71.29l3.17,3.18a1,1,0,0,1,.29.7A1,1,0,0,1,27.71,8.88Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-view,
#ca-view-foreign {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M30.89,15.54A17,17,0,0,0,16,6,17,17,0,0,0,1.11,15.54L.87,16l.24.46A17,17,0,0,0,16,26a17,17,0,0,0,14.89-9.54l.24-.46ZM24,16a8,8,0,1,1-8-8A8,8,0,0,1,24,16ZM3.14,16a16.47,16.47,0,0,1,4.14-4.89,10,10,0,0,0,0,9.78A16.47,16.47,0,0,1,3.14,16Zm21.58,4.89a10,10,0,0,0,0-9.78A16.47,16.47,0,0,1,28.86,16,16.47,16.47,0,0,1,24.72,20.89Z'/%3E%3Cpath d='M16,20a4,4,0,1,0-4-4A4,4,0,0,0,16,20Zm0-6a2,2,0,1,1-2,2A2,2,0,0,1,16,14Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#left-navigation li[id^=ca-nstab-] {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='12 15 11 15 11 17 12 17 20 17 21 17 21 15 20 15 12 15'/%3E%3Cpolygon points='12 19 11 19 11 21 12 21 15 21 16 21 16 19 15 19 12 19'/%3E%3Cpath d='M20.41,3H5V26a3,3,0,0,0,3,3H24a3,3,0,0,0,3-3V9.59ZM20,5.41,24.59,10H21a1,1,0,0,1-1-1ZM24,27H8a1,1,0,0,1-1-1V5H18V9a3,3,0,0,0,3,3h4V26A1,1,0,0,1,24,27Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-history {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm0,26A12,12,0,1,1,28,16,12,12,0,0,1,16,28Z'/%3E%3Cpath d='M17,7H15v8.52a2,2,0,0,0,.75,1.56l4.63,3.7,1.24-1.56L17,15.52Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-talk {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.svgviewer.dev/s/434200/outlined-paper-doc */
#t-contributions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#ca-addsection {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://github.com/sschoger/heroicons-ui/ */
#ca-viewsource {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-variants {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* https://www.iconfinder.com/iconsets/core-ui-outlined */
#p-cactions {
--icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,13a3,3,0,1,0,3,3A3,3,0,0,0,16,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,16,17Z'/%3E%3Cpath d='M24,13a3,3,0,1,0,3,3A3,3,0,0,0,24,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,24,17Z'/%3E%3Cpath d='M8,13a3,3,0,1,0,3,3A3,3,0,0,0,8,13Zm0,4a1,1,0,1,1,1-1A1,1,0,0,1,8,17Z'/%3E%3C/g%3E%3C/svg%3E");
}
} /* screen and (max-width:720px) */
@media screen and (max-width: 600px) {
.vector-search-box-inner {
width: 50vw;
max-width: 15em;
}
/* footer */
#footer #footer-icons {
float: none;
}
#footer #footer-info-copyright {
grid-column: l/span 2;
padding-right: 0;
padding-bottom: 40px;
}
#footer #footer-info-copyright img {
right: auto;
left: 0;
}
} /* screen and (max-width:600px) */
@media screen and (max-width: 450px) {
:root {
--layout-logo-scale: 0.25;
--layout-logo-box-height: calc(var(--layout-logo-height) + var(--layout-box-gap) * 2);
}
} /* screen and (max-width:450px) */
/***** Notification area *****/
.mw-notification-area-overlay {
position: fixed;
z-index: 9999;
}
.mw-notification-area {
font-size: 14px;
line-height: 1.7142857143;
}
.mw-notification {
color: var(--theme-text-color);
box-sizing: border-box;
border: var(--theme-box-border-width) var(--theme-box-border-style) var(--theme-box-border-color);
border-radius: var(--theme-box-border-radius);
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: var(--theme-box-shadow);
background: var(--theme-background);
transform: none;
}
/* Notification boxes on the right, e.g. after patrolling an edit */
.mw-notification.mw-notification-type-error {
color: var(--theme-notice-red-text-color);
border-color: var(--theme-notice-red-text-color);
}
.mw-notification.mw-notification-type-warn {
color: var(--theme-notice-orange-text-color);
border-color: var(--theme-notice-orange-text-color);
}
/****** postedit notification ******/
.postedit-container {
top: 4em;
}
.mw-dismissable-notice {
position: fixed;
left: 2em;
right: 2em;
bottom: 4em;
background: var(--theme-background);
max-width: 500px;
min-height: 80px;
padding: 12px 8px;
box-sizing: border-box;
text-align: left;
border: 1px solid var(--theme-border-color-accent);
border-left-width: 8px;
backdrop-filter: var(--theme-box-back-backdrop-filter);
box-shadow: 0 0 10px rgba(127, 127, 127, 0.3);
}
.mw-dismissable-notice .mw-dismissable-notice-close {
font-size: 11px;
}
.mw-dismissable-notice .mw-dismissable-notice-body {
margin: 0px 40px 0px 24px;
font-size: 14px;
}
.mw-dismissable-notice #localNotice {
margin: 0;
}
/***********************************************************************************************************
* Over-width table floating-scroll
***********************************************************************************************************/
/*
css for floating-scroll v3.2.0
https://amphiluke.github.io/floating-scroll/
(c) 2022 Amphiluke
*/
.fl-scrolls {
overflow: auto;
position: fixed;
}
.fl-scrolls div {
overflow: hidden;
pointer-events: none;
}
.fl-scrolls div:before {
content: " ";
}
.fl-scrolls, .fl-scrolls div {
font-size: 1px;
line-height: 0;
margin: 0;
padding: 0;
}
.fl-scrolls-hidden div:before {
content: " ";
}
.fl-scrolls-viewport {
position: relative;
}
.fl-scrolls-body {
overflow: auto;
}
.fl-scrolls-viewport .fl-scrolls {
position: absolute;
}
.fl-scrolls-hoverable .fl-scrolls {
opacity: 0;
transition: opacity 0.5s 0.3s;
}
.fl-scrolls-hoverable:hover .fl-scrolls {
opacity: 1;
}
.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
bottom: 0;
min-height: 17px;
}
.fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
height: 1px;
}
.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
bottom: 9999px;
}
.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
left: 0;
}
.fl-scrolls[data-orientation=vertical] {
right: 0;
min-width: 17px;
}
.fl-scrolls[data-orientation=vertical] div {
width: 1px;
}
.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
right: 9999px;
}
.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
top: 0;
}
/*css for wide table */
.table-wide {
clear: both;
position: relative;
}
.mw-parser-output > .table-width {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.table-wide-inner {
overflow-x: auto;
}
.table-wide-inner > table {
margin: 0 !important;
}
.table-wide:before {
box-shadow: inset -15px 0 20px -15px var(--theme-wide-table-shadow-color);
content: "";
display: block;
width: 20px;
height: 100%;
pointer-events: none;
position: absolute;
right: 0;
}
/***********************************************************************************************************
* Styles for "real" wiki page content. (in div.mw-parser-output)
***********************************************************************************************************/
/* external link icon. */
.mw-parser-output a.external,
.link-https {
padding-right: 0;
background: none;
}
/* custom icon color*/
.mw-parser-output a.external::after {
content: "";
display: inline-block;
width: 0.875em;
height: 0.875em;
background-color: currentColor;
--mask: url(/skins/Vector/resources/common/images/link-external-small-ltr-progressive.svg);
-webkit-mask: var(--mask) no-repeat;
mask: var(--mask) no-repeat;
-webkit-mask-size: auto 0.875em;
mask-size: auto 0.875em;
-webkit-mask-position: right center;
mask-position: right center;
margin-left: 2px;
}
.mw-parser-output > :first-child {
margin-top: 0;
}
/** headings **/
.mw-body h1, .mw-body-content h1, .mw-body-content h2,
.vector-body h3, .vector-body h4,
.vector-body h5, .vector-body h6 {
margin: 0;
color: var(--theme-heading-color);
font-family: var(--theme-heading-font-face, inherit);
line-height: var(--theme-heading-line-height, 1.25);
font-weight: var(--theme-heading-font-weight, normal);
}
.mw-body h1, .mw-body-content h1 {
font-size: var(--theme-heading-font-size-h1, 32px);
line-height: var(--theme-heading-line-height-h1, 40px);
font-weight: var(--theme-heading-font-weight-h1, var(--theme-heading-font-weight, normal));
}
.mw-body-content h2 {
font-size: var(--theme-heading-font-size-h2, 24px);
line-height: var(--theme-heading-line-height-h2, 30px);
font-weight: var(--theme-heading-font-weight-h2, var(--theme-heading-font-weight, normal));
margin-top: 18px;
margin-bottom: 9px;
border-bottom: 1px solid var(--theme-heading-rule-color-h2);
padding-bottom: 3px;
}
.vector-body h3 {
font-size: var(--theme-heading-font-size-h3, 20px);
line-height: var(--theme-heading-line-height-h3, 26px);
font-weight: var(--theme-heading-font-weight-h3, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h4 {
font-size: var(--theme-heading-font-size-h4, 16px);
line-height: var(--theme-heading-line-height-h4, 22px);
font-weight: var(--theme-heading-font-weight-h4, var(--theme-heading-font-weight, normal));
margin-top: 14px;
margin-bottom: 7px;
}
.vector-body h5 {
font-size: var(--theme-heading-font-size-h5, 14px);
line-height: var(--theme-heading-line-height-h5, 22px);
font-weight: var(--theme-heading-font-weight-h5, bold);
margin-top: 10px;
margin-bottom: 7px;
}
.vector-body h6 {
font-size: var(--theme-heading-font-size-h6, 12px);
line-height: var(--theme-heading-line-height-h6, 20px);
font-weight: var(--theme-heading-font-weight-h1, bold);
margin-top: 7px;
margin-bottom: 7px;
}
/* reduce heading font size: */
@media (max-width: 900px) {
.mw-body h1, .mw-body-content h1 {
font-size: 24px;
line-height: 32px;
}
.mw-body-content h2 {
font-size: 20px;
line-height: 28px;
}
.vector-body h3 {
font-size: 18px;
line-height: 24px;
}
}
/* section edit link */
.mw-editsection {
white-space: nowrap;
color: var(--theme-text-color-note);
}
/** ToC **/
/* base common style */
.toc {
background: none;
border-radius: 4px;
border: 1px solid var(--theme-border-color);
margin-top: 18px;
margin-bottom: 18px;
padding: 0;
font-size: 1em;
min-width: 12em;
}
.toc a {
color: var(--theme-text-color);
}
.toc .tocnumber {
color: var(--theme-text-color-note);
}
.toc .tocnumber:after {
content: ".";
}
/* header */
.toc {
/* arrow */
/* do not change ToC box width when toggle show/hide. */
}
.toc .toctitle {
position: relative;
overflow: hidden;
text-align: left;
padding: 8px;
}
.toc .toctitle h2 {
line-height: 20px;
font-weight: normal;
margin: 0;
border: 0;
display: flex;
align-items: center;
padding: 0 0.5em;
}
.toc .toctitle h2::before {
content: "";
display: block;
width: 12px;
height: 12px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewbox='0 0 12 12'%3E%3Cpath id='bulleted-list-tiny' d='M1.29 9.277c-.181.19-.29.45-.29.71 0 .26.109.52.29.71.189.18.45.29.71.29.26 0 .519-.11.71-.29.18-.19.29-.45.29-.71 0-.26-.11-.52-.29-.71-.38-.37-1.05-.37-1.42 0M10 9H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M6 3h4a1 1 0 1 0 0-2H6a1 1 0 1 0 0 2m4 2H6a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2M1.29 1.277c.37-.37 1.04-.37 1.42 0 .18.19.29.45.29.71 0 .26-.11.52-.29.71-.191.18-.45.29-.71.29-.26 0-.521-.11-.71-.29-.181-.19-.29-.45-.29-.71 0-.26.109-.52.29-.71zM2.55 5.17c.06.03.11.08.16.12.18.19.29.45.29.71 0 .26-.11.521-.29.71-.05.04-.1.09-.16.12a.559.559 0 0 1-.17.09c-.06.03-.12.05-.19.06-.06.01-.13.02-.19.02-.26 0-.52-.11-.71-.29A1.05 1.05 0 0 1 1 6c0-.26.11-.52.29-.71.24-.23.58-.34.9-.269a.6.6 0 0 1 .19.058c.06.021.12.051.17.091z'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: var(--theme-text-color);
margin: 0 6px 0 0;
}
.toc .toctogglelabel {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
box-sizing: border-box;
padding-right: 1em;
display: flex;
align-items: center;
justify-content: flex-end;
}
.toc .toctogglespan {
font-size: 1em;
}
.toc .toctogglespan::before,
.toc .toctogglespan::after,
.toc .toctogglelabel::after {
display: none;
}
.toc .toctogglelabel::before {
content: "";
display: inline-block;
background: none;
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: var(--theme-icon-color) transparent;
border-width: 0 5px 6px 5px;
vertical-align: middle;
flex: 0 0 auto;
}
.toc .toctogglelabel:hover::before {
border-color: var(--theme-icon-color-hover) transparent;
}
.toc .toctogglecheckbox:checked + .toctitle .toctogglelabel::before {
border-width: 6px 5px 0 5px;
}
.toc .toctogglecheckbox:checked ~ ul {
overflow: hidden;
display: block;
height: 0;
border: 0;
padding-top: 0;
padding-bottom: 0;
}
/* content list */
.mw-content-ltr .toc ul ul,
.mw-content-rtl .toc ul ul {
margin: 0 0 0 1em;
}
.toc > ul {
padding: 0.5em;
border-top: 1px solid var(--theme-border-color);
margin: 0;
}
.toc > ul a {
display: block;
padding: 2px 0.5em;
border-radius: 4px;
transition: background 0.1s;
}
.toc > ul a:hover {
text-decoration: none;
background: var(--theme-highlight-background);
}
.toc > ul li {
margin: 0;
}
/********* Tables *********/
table {
/* fix 100% width table with border */
box-sizing: border-box;
}
table.lined,
table.bordered,
table.cellborder {
border-collapse: collapse;
border-style: solid;
border-color: var(--theme-border-color);
}
table.lined th,
table.lined td {
border-width: 0 0 1px 0;
}
table tfoot:empty,
table thead:empty {
display: none;
}
table.lined td.noline, table.lined tr.noline td {
border-bottom-width: 0;
}
table tr.bottomline td {
border-bottom-width: 1px;
}
table tr.topline td {
border-top-width: 1px;
}
table td.bottomline, table.lined tr.noline td.bottomline {
border-bottom-width: 1px;
}
table td.topline {
border-top-width: 1px;
}
/* Hack for using "border-collapse" and "border-radius" in the same table display by using one table nested within another */
table.outer {
white-space: nowrap;
}
table.inner {
border-collapse: collapse;
background: inherit;
width: 100%;
}
table.inner th {
border: 2px solid var(--theme-border-color);
}
.wikitable,
.wikitable > tr > th,
.wikitable > * > tr > th {
color: inherit;
background: none;
}
.wikitable {
border-color: var(--theme-border-color);
}
table.cargoTable.noMerge tr:nth-child(2n) {
background: rgba(127, 127, 127, 0.25);
}
table.cargoTable.noMerge tr:nth-child(2n+1) {
background: none;
}
.gallery.mw-gallery-traditional {
display: flex;
gap: var(--theme-gap-y, 0) var(--theme-gap-x, 0);
flex-wrap: wrap;
margin: auto;
}
.gallery.mw-gallery-traditional.center {
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerybox {
width: min-content !important;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox > div {
width: unset !important;
}
.gallery.mw-gallery-traditional .gallerybox .thumb {
background: none;
border: 0;
margin: 0;
}
.gallery.mw-gallery-traditional .gallerybox .thumb > div {
border: 1px solid var(--theme-border-color);
}
.gallery.mw-gallery-traditional .gallerytext {
font-size: 12px;
display: flex;
justify-content: center;
}
.gallery.mw-gallery-traditional .gallerytext p {
width: auto;
flex: 0 1 auto;
}
html .thumbimage {
background-color: transparent;
border: 0;
}
/** gallery **/
div.thumbinner {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
}
li.gallerybox div.thumb {
border-radius: var(--theme-box-border-radius);
}
.gallery * {
box-sizing: initial;
}
.mw-gallery-traditional .thumb {
display: flex;
}
.mw-gallery-traditional .thumb a {
display: block;
}
.portable-infobox {
border: 1px solid var(--pi-border-color);
padding: var(--pi-padding);
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
text-align: center;
}
.portable-infobox .pi-title, .portable-infobox .pi-header {
background: var(--pi-secondary-background);
color: var(--pi-secondary-background--label);
border-radius: 3px;
}
.portable-infobox .pi-data {
border-bottom: 0;
gap: 8px;
}
.portable-infobox .pi-data-label {
color: var(--pi-label-text-color);
background: var(--pi-label-background);
border-radius: 3px;
border-color: #f000;
margin-top: 3px;
margin-left: 2px;
margin-right: 2px;
margin-bottom: 2px;
}
.portable-infobox .pi-data-label, .portable-infobox .pi-data-value {
padding: 6px;
}
.portable-infobox .pi-media-collection-tabs {
gap: 8px;
}
.portable-infobox .pi-tab-link {
border: 0;
border-bottom: 2px solid transparent;
}
.portable-infobox .pi-media-collection .pi-tab-link.current {
background: none;
border-bottom-color: var(--pi-secondary-background);
}
/***********************************************************************************************************
* common style for content box
***********************************************************************************************************/
.fullwidth, .full-width {
width: 100%;
}
.nowrap {
white-space: nowrap;
}
/* ".center" has width=100% rule, we don't want it, so use a different class name. */
.aligncenter,
.align-center {
text-align: center;
}
.alignleft,
.align-left {
text-align: left;
}
.alignright,
.align-right {
text-align: right;
}
/* clear fix for float block */
.clearfix {
*zoom: 1;
}
.clearfix::before,
.clearfix::after {
content: " ";
display: table;
}
.clearfix::after {
clear: both;
}
/***********************************************************************************************************
* css for specific content pages
***********************************************************************************************************/
/*********** Main page START ****************/
#mainpage-wrap .footer {
text-align: right;
font-size: 12px;
line-height: 22px;
}
#mainpage-wrap .box {
border: 1px solid var(--theme-border-color);
border-radius: var(--theme-box-border-radius);
padding: 1.5em;
}
#mainpage-wrap h2 {
margin-top: 0;
border-bottom: 0;
}
#mainpage-wrap .content-wrap {
display: flex;
gap: 1em;
align-items: stretch;
margin-bottom: 1em;
}
@media (max-width: 1200px) {
#mainpage-wrap .content-wrap {
flex-direction: column;
}
}
#mainpage-wrap .content-wrap .l {
flex: 4 4 800px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .content-wrap .r {
flex: 1 1 300px;
display: flex;
flex-direction: column;
gap: 1em;
}
#mainpage-wrap .box.header {
text-align: center;
}
#mainpage-wrap .box.header .welcome h2 {
font-size: 2em;
}
#mainpage-wrap .box.header ul {
display: inline-flex;
align-items: center;
margin: 1.5em auto 0.5em;
gap: 1em;
}
#mainpage-wrap .box.header ul li {
list-style: none;
}
@media (max-width: 600px) {
#mainpage-wrap .box.header img {
width: 32px;
height: auto;
}
}
#mainpage-wrap .box.game > div {
display: flex;
gap: 1em;
align-items: center;
}
@media (max-width: 640px) {
#mainpage-wrap .box.game > div {
flex-direction: column;
}
}
#mainpage-wrap .box.game img {
width: 100%;
height: auto;
max-width: 320px;
max-height: 180px;
box-shadow: 0 0 3px rgba(255, 255, 255, 0.25);
}
#mainpage-wrap .box.game p {
font-size: 16px;
line-height: 28px;
}
#mainpage-wrap .box.quicklinks {
font-size: 18px;
}
#mainpage-wrap .box.quicklinks .content {
display: flex;
gap: 2em;
flex-wrap: wrap;
}
#mainpage-wrap .box.quicklinks .content > div {
padding: 0.75em 1.5em;
border: 1px solid var(--theme-link-color);
}
.slider {
margin: 1em auto;
width: 100%;
max-width: 100%;
overflow: hidden;
position: relative;
text-align: left;
}
.slider > .prev, .slider > .next {
display: block;
width: 30px;
height: 30px;
background: rgba(255, 255, 255, 0.6);
position: absolute;
top: 50%;
transform: translateY(-50%);
cursor: pointer;
border-radius: 100%;
}
.slider > .prev:before, .slider > .next:before {
content: "";
display: block;
width: 14px;
height: 14px;
margin: 8px;
--mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath id='aarow-tiny' d='M5 11a.997.997 0 0 1-.707-.293l-4-4A.983.983 0 0 1 0 6.003v-.006a.988.988 0 0 1 .293-.704l4-4a.999.999 0 1 1 1.414 1.414L3.414 5H11a1 1 0 1 1 0 2H3.414l2.293 2.293A.999.999 0 0 1 5 11'%3E%3C/path%3E%3C/svg%3E") no-repeat;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-size: 100% 100%;
mask-size: 100% 100%;
-webkit-mask-position: center center;
mask-position: center center;
background-color: #333;
}
.slider > .prev {
left: 6px;
}
.slider > .next {
right: 6px;
}
.slider > .next:before {
transform: scaleX(-1);
}
.slider ul {
height: 100%;
margin: 0;
transition: transform 0.3s;
}
.slider li {
display: grid;
position: absolute;
margin: 0;
width: 100%;
height: 100%;
background-size: var(--image-resize-mode);
background-position: center center;
background-repeat: no-repeat;
}
.slider li img, .slider li > a {
display: block;
place-self: center center;
width: 100% !important;
height: 100% !important;
opacity: 0;
}
.slider li > span {
position: absolute;
left: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.75);
color: white;
display: block;
width: 100%;
box-sizing: border-box;
padding: 8px;
font-size: 12px;
}
.slider li > span b {
display: block;
font-size: 14px;
}
.slider li > span a {
display: block;
color: #fff;
font-weight: bold;
}
@media (min-width: 640px) {
.slider li > span a {
position: absolute;
right: 8px;
top: 50%;
transform: translateY(-50%);
}
}
/*********** Main page END ****************/
/***********************************************************************************************************
* css for pages under MediaWiki or Special NS, or system widgets on template/module pages and so on
***********************************************************************************************************/
/********* ooui *********/
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background: none;
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
color: var(--theme-text-color);
}
.oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.oo-ui-tabSelectWidget-framed {
background: none;
}
/********* for File: NS pages *********/
#filetoc {
background: none;
}
/******* Search result page. (Special:Search) ******/
.mw-search-form-wrapper {
font-size: 1em;
}
.mw-search-form-wrapper #mw-search-top-table {
display: flex;
align-items: center;
}
.mw-search-form-wrapper #mw-search-top-table > div {
float: none;
}
.mw-search-form-wrapper .results-info {
color: var(--theme-text-color-note);
font-size: 1em;
padding: 0 0 0 3em;
white-space: nowrap;
text-align: right;
flex: 1 1 auto;
}
.mw-search-form-wrapper .mw-search-visualclear {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs {
border: 0;
margin: 1em 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types + div {
display: none;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types {
width: 100%;
float: none;
padding: 0;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
float: none;
display: inline-block;
vertical-align: middle;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li.current {
background: var(--theme-highlight-background);
border-radius: 4px;
overflow: hidden;
}
.mw-search-form-wrapper #mw-searchoptions {
padding: 1em;
background: var(--theme-box-background);
border: 1px solid var(--theme-border-color-accent);
border-radius: 4px;
}
/* responsive tweak */
@media screen and (max-width: 600px) {
.mw-search-form-wrapper #mw-search-top-table {
display: block;
}
.mw-search-form-wrapper .results-info {
margin-top: 1em;
}
.mw-search-form-wrapper .mw-search-profile-tabs .search-types ul li {
font-size: 12px;
}
}
.theme-dark {
/***********************************************************************************************************
* dark theme tweak
***********************************************************************************************************/
/* ref */
}
.theme-dark #filetoc, .theme-dark code,
.theme-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend,
.theme-dark .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined,
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle,
.theme-dark .mw-search-profile-tabs, .theme-dark #mw-searchoptions,
.theme-dark .mw-datatable td {
background: none;
}
.theme-dark ol.references li:target, .theme-dark sup.reference:target {
background-color: rgba(255, 255, 255, 0.15);
}
.theme-dark .oo-ui-textInputWidget .oo-ui-inputWidget-input {
background: #1f3030;
color: var(--theme-text-color);
}
.theme-dark #mw-allmessagestable tbody:hover td {
background: var(--theme-highlight-background);
}
.theme-dark li.gallerybox div.thumb {
background: var(--theme-box-background);
}
.theme-dark ul {
list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="13"><circle cx="2.5" cy="9" r="2.5" fill="#fff"/></svg>');
}
.theme-dark .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--theme-text-color-note);
}
.theme-dark .oo-ui-tabSelectWidget-framed,
.theme-dark .mw-prefs-buttons {
background: none;
}
.theme-dark .oo-ui-tabOptionWidget {
color: var(--theme-text-color);
}
.theme-dark .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--theme-text-color);
background: none;
}
.theme-dark table.diff .diff-context {
background: rgba(248, 249, 250, 0.15);
color: var(--theme-text-color);
}
.theme-dark table.diff .diff-addedline .diffchange {
background: rgba(74, 166, 255, 0.6);
}
.theme-dark table.diff .diff-deletedline .diffchange {
background: rgba(255, 198, 63, 0.6);
}
.theme-dark :root {
--pi-background: rgba(255,255,255, 0.1);
}
.theme-dark div.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background: #231c3b;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .oo-ui-iconElement-icon {
filter: invert(1);
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagItemWidget .oo-ui-iconElement-icon {
filter: none;
}
.theme-dark .mw-rcfilters-ui-filterTagMultiselectWidget .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: #ddd;
}
.theme-dark div.thumbinner {
background: none;
}
.theme-dark #pagehistory li.selected {
background: rgba(40, 40, 40, 0.6);
color: var(--theme-text-color);
}
.theme-dark #mw-indicator-mw-helplink a {
background: none;
position: relative;
}
.theme-dark #mw-indicator-mw-helplink a:before {
content: "";
display: block;
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
background-image: url(/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34);
filter: invert(1);
}
.theme-dark .mw-plusminus-pos {
color: #7cf56e;
}
.theme-dark .mw-plusminus-neg {
color: #ff9a9b;
}
.theme-dark .autocomment, .theme-dark .autocomment a, .theme-dark .autocomment a:visited {
color: var(--theme-text-color-note);
}
.theme-dark .mw-message-box-warning {
background-color: rgba(54, 44, 10, 0.5);
border-color: #fc3;
color: #fff;
}
.theme-dark fieldset {
border-color: #ccc;
}
.theme-dark .mw-highlight pre, .theme-dark .mw-highlight code, .theme-dark .mw-highlight .mw-code {
color: #ccc;
}
.theme-dark .mw-highlight .nv {
color: #01C2EC;
}
.theme-dark .horse-userprofile {
background-color: transparent;
}
.theme-dark .tabber__header--prev-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%);
mask-image: linear-gradient(90deg, transparent, #fff 20%);
}
.theme-dark .tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, #fff 80%, transparent);
mask-image: linear-gradient(90deg, #fff 80%, transparent);
}
.theme-dark .tabber__header--prev-visible.tabber__header--next-visible .tabber__tabs {
-webkit-mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
mask-image: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
}
.theme-dark .tabber__indicator {
background: #01c2ec;
}
.theme-dark .tabber__tab {
color: #ffd500;
}
.theme-dark .tabber__tab:visited {
color: #fcb900;
}
.theme-dark .tabber__tab[aria-selected=true], .theme-dark .tabber__tab[aria-selected=true]:visited {
color: #01c2ec;
}
.theme-dark .tabber__transclusion--loading .tabber__loading-indicator, .theme-dark .tabber__transclusion--loading:before, .theme-dark .tabber__transclusion--loading:after {
background-color: #01c2ec;
}
@media (hover: hover) {
.theme-dark .tabber__tab:hover {
color: #32d8ff;
}
.theme-dark .tabber__tab:active {
color: #05b8e0;
}
.theme-dark .tabber__header__prev:hover, .theme-dark .tabber__header__next:hover {
background-color: rgba(0, 24, 73, 0.03);
}
.theme-dark .tabber__header__prev:active, .theme-dark .tabber__header__next:active {
background-color: rgba(0, 24, 73, 0.05);
}
}
.portable-infobox {
border-radius: 6px;
overflow: hidden;
border: 1px solid var(--pi-border-color);
}
.pi-smart-data-value:not(:first-child) {
border-color: #f000
}
.portable-infobox .pi-border-color {
border-color:rgba(255,213,0,0.25);
}
.wikiEditor-ui-toolbar {
color: #000;
}
.toccolours {
background-color: unset;
border: unset;
font-size: unset;
padding: unset;
}
b22de9405d8dc02ce14a69e4d0d9610b33756bd0
File:SA 01.png
6
175
721
2024-03-02T13:09:58Z
Lukkram
396381
Trailmakers Achievements 01
wikitext
text/x-wiki
== Summary ==
Trailmakers Achievements 01
e8bfa7674be10607d603a671e875ac5e6999ded5
Template:PIachievements
10
176
722
2024-03-02T13:17:50Z
Lukkram
396381
Created page with "<includeonly> <infobox> <title source="title"> <default>{{PAGENAME}}</default> </title> <image source="image"> <caption source="caption"/> </image> <data source="about"> <label>About</label> </data> <header>Obtained by</header> <group row-items="3"> <data source="steam"> <label>Steam</label> </data> <data source="xbox"> <label>Xbox</label> </data> <data source="ps"> <label>PS</label> </da..."
wikitext
text/x-wiki
<includeonly>
<infobox>
<title source="title">
<default>{{PAGENAME}}</default>
</title>
<image source="image">
<caption source="caption"/>
</image>
<data source="about">
<label>About</label>
</data>
<header>Obtained by</header>
<group row-items="3">
<data source="steam">
<label>Steam</label>
</data>
<data source="xbox">
<label>Xbox</label>
</data>
<data source="ps">
<label>PS</label>
</data>
</group>
<data source="other">
<label>Other</label>
</data>
</group>
<data source="about">
<label>About</label>
</data>
</infobox>
</includeonly>
<noinclude>
Usage:<pre>
{{PIachievements
|title=
|image=
|caption=
|about=
|steam=
|xbox=
|ps=
|other=
|about=
}}
</pre>
[[Category:Infobox templates]]</noinclude>
caba78379b0e1b46398c042da77f1bbf6781c3b9
723
722
2024-03-02T13:19:25Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly>
<infobox>
<title source="title">
<default>{{PAGENAME}}</default>
</title>
<image source="image">
<caption source="caption"/>
</image>
<data source="about">
<label>About</label>
</data>
<header>Obtained by</header>
<group row-items="3">
<data source="steam">
<label>Steam</label>
</data>
<data source="xbox">
<label>Xbox</label>
</data>
<data source="ps">
<label>PS</label>
</data>
</group>
<data source="other">
<label>Other</label>
</data>
</infobox>
</includeonly>
<noinclude>
Usage:<pre>
{{PIachievements
|title=
|image=
|caption=
|about=
|steam=
|xbox=
|ps=
|other=
}}
</pre>
[[Category:Infobox templates]]</noinclude>
a33c395ebd5dca9e847b0e4a9157ce683529372a
Achievements
0
56
724
436
2024-03-02T13:48:19Z
Lukkram
396381
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map. ( Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024 )
<tabber>
|-|Danger Zone=
{{Flexstart|inline}}
{{PIachievements
|title= 3-Pointer
|image= SA_01.png
|caption=
|about= Shoot Hoops on Danger Zone
|steam= 6.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= El Capitan
|image= SA_01.png
|caption=
|about= Reach the Top of Danger Zone
|steam= 8.3%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Race Island=
{{Flexstart|inline}}
{{PIachievements
|title= Best View In Town
|image= SA_01.png
|caption=
|about= Land on the Lighthouse on Race Island
|steam= 3.5%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Hot Air
|image= SA_01.png
|caption=
|about= Crash into the blimp on Race Island
|steam= 7.5%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Island Hopper
|image= SA_01.png
|caption=
|about= Land in all the floating Islands above Race Island in one session
|steam= 1.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Treasure Island=
{{Flexstart|inline}}
{{PIachievements
|title= Man In Black
|image= SA_01.png
|caption=
|about= Fly through all the rings of fire in Treasure Island in one session
|steam= 4.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Moby Dick
|image= SA_01.png
|caption=
|about= Bump into the whales in Treasure Island
|steam= 3.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Monster!
|image= SA_01.png
|caption=
|about= Drive over 8 chickens on Treasure Island in one session
|steam= 10.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Pay your respect
|image= SA_01.png
|caption=
|about= Visit the monument on Treasure Island
|steam= 9.5%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Problem Solver
|image= SA_01.png
|caption=
|about= Complete all the ball puzzles on Treasure Island
|steam= 2.0%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Treehugger
|image= SA_01.png
|caption=
|about= Hug the Tree on the Northeastern Island on Treasure Island
|steam= 1.6%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Rally Mode=
{{Flexstart|inline}}
{{PIachievements
|title= Gold Rush
|image= SA_01.png
|caption=
|about= Get gold on Downhill Rush
|steam= 6.2%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Slide to Win
|image= SA_01.png
|caption=
|about= Get gold on Sunny Slide
|steam= 2.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= To Fly or Not To Fly
|image= SA_01.png
|caption=
|about= Get gold on Cliff Land
|steam= 2.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Stranded in Space=
{{Flexstart|inline}}
{{PIachievements
|title= Bring Marshmallows!
|image= SA_01.png
|caption=
|about= Enter the volcano
|steam= 15.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Power Core Collector
|image= SA_01.png
|caption=
|about= Find 15 Power Cores in Stranded in Space
|steam= 20.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Ready For Takeoff
|image= SA_01.png
|caption=
|about= Rebuild your spaceship
|steam= 9.2%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= So attractive!
|image= SA_01.png
|caption=
|about= Pick up a piece of Salvage
|steam= 35.8%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
{{Flexstart|inline}}
{{PIachievements
|title= Car Collector
|image= SA_01.png
|caption=
|about= Download and load in a vehicle from the Workshop
|steam= 51.9%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Leonardo da Vinci
|image= SA_01.png
|caption=
|about= Stay airborne in a zero Power Core vehicle for 60 seconds
|steam= 5.6%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sharing is Caring
|image= SA_01.png
|caption=
|about= Upload a vehicle to the Workshop
|steam= 10.0%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sonic Boom
|image= SA_01.png
|caption=
|about= Break the sound barrier
|steam= 29.2%
|xbox=
|ps=
|other=
}}
{{Flexend}}
</tabber>
a485cd59644c59a7e3518f29256d5b42a38ffc19
725
724
2024-03-02T14:05:13Z
Lukkram
396381
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. 2 in Danger Zone, 3 in Race Island, 6 in Treasure Island, 3 in Rally Mode, 4 in Stranded in Space & 4 that are't map dependent. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map. ( Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024 )
<tabber>
|-|Danger Zone=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= 3-Pointer
|image= SA_01.png
|caption=
|about= Shoot Hoops on Danger Zone
|steam= 6.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= El Capitan
|image= SA_01.png
|caption=
|about= Reach the Top of Danger Zone
|steam= 8.3%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Race Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Best View In Town
|image= SA_01.png
|caption=
|about= Land on the Lighthouse on Race Island
|steam= 3.5%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Hot Air
|image= SA_01.png
|caption=
|about= Crash into the blimp on Race Island
|steam= 7.5%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Island Hopper
|image= SA_01.png
|caption=
|about= Land in all the floating Islands above Race Island in one session
|steam= 1.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Treasure Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Man In Black
|image= SA_01.png
|caption=
|about= Fly through all the rings of fire in Treasure Island in one session
|steam= 4.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Moby Dick
|image= SA_01.png
|caption=
|about= Bump into the whales in Treasure Island
|steam= 3.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Monster!
|image= SA_01.png
|caption=
|about= Drive over 8 chickens on Treasure Island in one session
|steam= 10.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Pay your respect
|image= SA_01.png
|caption=
|about= Visit the monument on Treasure Island
|steam= 9.5%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Problem Solver
|image= SA_01.png
|caption=
|about= Complete all the ball puzzles on Treasure Island
|steam= 2.0%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Treehugger
|image= SA_01.png
|caption=
|about= Hug the Tree on the Northeastern Island on Treasure Island
|steam= 1.6%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Rally Mode=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Gold Rush
|image= SA_01.png
|caption=
|about= Get gold on Downhill Rush
|steam= 6.2%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Slide to Win
|image= SA_01.png
|caption=
|about= Get gold on Sunny Slide
|steam= 2.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= To Fly or Not To Fly
|image= SA_01.png
|caption=
|about= Get gold on Cliff Land
|steam= 2.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Stranded in Space=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Bring Marshmallows!
|image= SA_01.png
|caption=
|about= Enter the volcano
|steam= 15.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Power Core Collector
|image= SA_01.png
|caption=
|about= Find 15 Power Cores in Stranded in Space
|steam= 20.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Ready For Takeoff
|image= SA_01.png
|caption=
|about= Rebuild your spaceship
|steam= 9.2%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= So attractive!
|image= SA_01.png
|caption=
|about= Pick up a piece of Salvage
|steam= 35.8%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Car Collector
|image= SA_01.png
|caption=
|about= Download and load in a vehicle from the Workshop
|steam= 51.9%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Leonardo da Vinci
|image= SA_01.png
|caption=
|about= Stay airborne in a zero Power Core vehicle for 60 seconds
|steam= 5.6%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sharing is Caring
|image= SA_01.png
|caption=
|about= Upload a vehicle to the Workshop
|steam= 10.0%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sonic Boom
|image= SA_01.png
|caption=
|about= Break the sound barrier
|steam= 29.2%
|xbox=
|ps=
|other=
}}
{{Flexend}}
</tabber>
c414d2c8d1f5f43bf648ed32fe0a62258bd76aed
Template:PIpowercore
10
177
727
2024-03-02T14:37:13Z
Lukkram
396381
Created page with "<includeonly> <infobox> <title source="title"> <default>{{PAGENAME}}</default> </title> <image source="image"> <caption source="caption"/> </image> <group collapse="closed"> <header>Properties</header> <group row-items="3"> <data source="powercores"> <label>Cores</label> </data> <data source="weight"> <label>Weight</label> </data> <data source="size"> <label>Size</label> </data> <data source="po..."
wikitext
text/x-wiki
<includeonly>
<infobox>
<title source="title">
<default>{{PAGENAME}}</default>
</title>
<image source="image">
<caption source="caption"/>
</image>
<group collapse="closed">
<header>Properties</header>
<group row-items="3">
<data source="powercores">
<label>Cores</label>
</data>
<data source="weight">
<label>Weight</label>
</data>
<data source="size">
<label>Size</label>
</data>
<data source="power">
<label>Power</label>
</data>
<data source="dmg">
<label>Damage</label>
</data>
<data source="hp">
<label>HP</label>
</data>
<data source="aero">
<label>Aero</label>
</data>
</group>
<data source="other">
<label>Other</label>
</data>
</group>
<data source="about">
<label>About</label>
</data>
</infobox>
</includeonly>
<noinclude>
Usage:<pre>
This template is for making Infoboxes for blocks that have a power core cost.
To use it, simply copy and paste the snippet below and fill in the fields (empty fields will not be rendered). If you want to use multiple like in [[Achievements]], just add <nowiki>{{Flexstart|inline}}</nowiki> before and <nowiki>{{Flexend}}</nowiki> after the snippet.
{{PIpowercore
|title=
|image=
|caption=
|powercores=
|weight=
|size=
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
</pre>
[[Category:Infobox templates]]</noinclude>
5a98ccb40e6092b57965bd51b6bf9f7e09acaba9
728
727
2024-03-02T14:50:42Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly>
<infobox>
<title source="title">
<default>{{PAGENAME}}</default>
</title>
<image source="image">
<caption source="caption"/>
</image>
<group collapse="closed">
<header>Properties</header>
<group row-items="3">
<data source="powercores">
<label>Cores</label>
</data>
<data source="weight">
<label>Weight</label>
</data>
<data source="size">
<label>Size</label>
</data>
<data source="power">
<label>Power</label>
</data>
<data source="dmg">
<label>Damage</label>
</data>
<data source="hp">
<label>HP</label>
</data>
<data source="aero">
<label>Aero</label>
</data>
</group>
<data source="other">
<label>Other</label>
</data>
</group>
<data source="about">
<label>About</label>
</data>
</infobox>
</includeonly>
<noinclude>
Usage:
This template is for making Infoboxes for blocks that have a power core cost.
To use it, simply copy and paste the snippet below and fill in the fields (empty fields will not be rendered). If you want to use multiple like in [[Achievements]], just add <nowiki>{{Flexstart|inline}}</nowiki> before and <nowiki>{{Flexend}}</nowiki> after the snippet.
<pre>
{{PIpowercore
|title=
|image=
|caption=
|powercores=
|weight=
|size=
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
</pre>
[[Category:Infobox templates]]</noinclude>
9530f3f9fe04d10db1fd6bbad9cf2047dcf870b0
Template:PIblock
10
178
729
2024-03-02T14:55:02Z
Lukkram
396381
Created page with "<includeonly> <infobox> <title source="title"> <default>{{PAGENAME}}</default> </title> <image source="image"> <caption source="caption"/> </image> <group collapse="closed"> <header>Properties</header> <group row-items="2"> <data source="weight"> <label>Weight</label> </data> <data source="size"> <label>Size</label> </data> <data source="hp"> <label>HP</label> </data> <data source="aero">..."
wikitext
text/x-wiki
<includeonly>
<infobox>
<title source="title">
<default>{{PAGENAME}}</default>
</title>
<image source="image">
<caption source="caption"/>
</image>
<group collapse="closed">
<header>Properties</header>
<group row-items="2">
<data source="weight">
<label>Weight</label>
</data>
<data source="size">
<label>Size</label>
</data>
<data source="hp">
<label>HP</label>
</data>
<data source="aero">
<label>Aero</label>
</data>
</group>
<data source="other">
<label>Other</label>
</data>
</group>
<data source="about">
<label>About</label>
</data>
</infobox>
</includeonly>
<noinclude>
Usage:
This template is for making Infoboxes for blocks that don't have a power core cost.
To use it, simply copy and paste the snippet below and fill in the fields (empty fields will not be rendered). If you want to use multiple like in [[Achievements]], just add <nowiki>{{Flexstart|inline}}</nowiki> before and <nowiki>{{Flexend}}</nowiki> after the snippet.
<pre>
{{PIpowercore
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
</pre>
[[Category:Infobox templates]]</noinclude>
791879a51670633a3eefb76a3bfbf96c1fdcf8d4
730
729
2024-03-02T14:55:19Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly>
<infobox>
<title source="title">
<default>{{PAGENAME}}</default>
</title>
<image source="image">
<caption source="caption"/>
</image>
<group collapse="closed">
<header>Properties</header>
<group row-items="2">
<data source="weight">
<label>Weight</label>
</data>
<data source="size">
<label>Size</label>
</data>
<data source="hp">
<label>HP</label>
</data>
<data source="aero">
<label>Aero</label>
</data>
</group>
<data source="other">
<label>Other</label>
</data>
</group>
<data source="about">
<label>About</label>
</data>
</infobox>
</includeonly>
<noinclude>
Usage:
This template is for making Infoboxes for blocks that don't have a power core cost.
To use it, simply copy and paste the snippet below and fill in the fields (empty fields will not be rendered). If you want to use multiple like in [[Achievements]], just add <nowiki>{{Flexstart|inline}}</nowiki> before and <nowiki>{{Flexend}}</nowiki> after the snippet.
<pre>
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
</pre>
[[Category:Infobox templates]]</noinclude>
2f9bba4a522a6eb2d8717bdc02648da41491697b
Blocks
0
6
733
37
2024-03-05T16:39:41Z
Moto28
432060
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles. These will make up the structure of your build, being both internal and external, aesthetics and frame. Be careful with placement, you don’t want to use too many and reach the complexity limit, or make it so there is a random 1x1 hole that cannot be fixed easily
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]], which can give power to a land-based vehicle, such as Bulldawg engine, RAW engine and Dragon engine, ranging from low power, to higher power, with certain engines being heavier than others, and having different acceleration speeds.
*[[Hover Blocks]], which are blocks like the hover pad, which allows you to float at a specified distance above the ground, and can be used upside down to become a wall-rider. (It can also be used in glitches)
*[[Thruster Blocks]], blocks such as Mini-thruster, RAW thruster, Dragon engine, and more with the 1.6 update, these allow propulsion on land and air, only being stopped by the sea, in which most propulsion blocks, other than underwater-centred blocks still work.
*[[Propeller blocks|Propeller Blocks]], which some of them are Propellors, Underwater propellers, Heli engine V1 and V2 (stackable/non-stackable), which all have their own functions.
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available. You can also limit these power cores in sandbox game modes from a range of 1-30, or not at all, same goes with complexity, being a range of 1(?)-700.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground. These can come in many shapes and sizes. Some may be only 3x3, while some may be 7x7, some are thin, some are thick, and they all have different grip on different terrains.
Go kart wheels or slim wheels (or landing gear) can be used on planes due to their small size or lightweightdness, while truck wheels or monster truck wheels can be used on grip-focussed vehicles, and may help making a multipurpose vehicle, although, aerodynamically? not the best. keep the speed to the lighter, smaller wheels
.
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle. These can be used in simple ways, such as decreasing weight when needed, moving wheels left and right, adding suspension to a vehicle, or can be used in a more complex way. They aren’t limited to just that though, they can be used to make complex mechanical arms, make well-made battlebots that may dominate every battle, or even just combining them with logic, and allowing extreme contraptions to be made that can confuse new and old members of the game.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds. These can be used as aesthetics to make the build more slick, using wedges to make builds look cleaner, or to make them more aerodynamic, or both.
There’s multiple types, like wedges (1x2 and 2x1 to 1x4 and 4x4), rounded (1x2, 2x4x2, etc), and corner (2x2x2, 2x1x2, 3x1x3, 4x1x4 and inverted corners for those). If you think you cannot fit a wedge into your build, or cannot fit a type of aerodynamic block into your build, you probably can by moving blocks around.
=== [[Lights]] ===
Lights are used to illuminate your vehicles. They can also be used to decorate parts of a vehicle to make them look more dramatic, or to give off the effect of an ominous presence, or some form of higher being if used correctly.
There are only 4 designated light blocks that aren’t accessories, and they’re headlight V1 and 2, one being a bottom attack point, the other being directly on top of the connection point, same goes with twilight V1 and 2.
=== Lift and Drag Blocks ===
Lift and Drag Blocks help lift your vehicles up, or push them down. This is how you make planes, and how you can also make things glide in the air.
There are powered and unpowered aerodynamic blocks for small, simple and normal tailfins, small tailfin are 2x2x1, making them easy to place, but may not be as great to use as the simple tailfin, which may be 4x4x5, and the normal tailfin. The normal tailfin is the only tailfin to have a 2x2 attachment point on top of it, allowing it to have extra blocks attached onto it. It is 4x4x2, which is the widest out of all 3. The powered tailfins are more aerodynamic, but require a power core each, while the unpowered aren’t as efficient in air, but are effective for saving power cores.
Wings come in 2 forms, small and large modular, one taking 2x1x4, the other taking 4x1x4, but each one being better in their own situation. The smaller isn’t as effective in air, but can be used to carry smaller planes into the sky with propulsion. Larger ones are meant for heavier and larger aircraft. Neither have a powered version. The 1.6 update brought more forms of wings, but their best experiences to figure out what they do
=== Tube Blocks ===
Tube Blocks provide a modular system of tubes to use in your vehicles. Many people normally skip over these blocks, thinking of them as worse looking frame blocks, and ignoring them. They hold a secret block a surprising amount of people don’t know about. The only 1x1x1 block to exist in Trailmakers (to my knowledge), that has all 6 connection points as well, and uses no mods at all, meaning it’s completely vanilla.
=== Balance Blocks ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant. When first looking at these, you may only use the buoyancy blocks or pontoons, but the weight blocks are life changers, or even life savers depending on the situation. A build that may flip over every turn can suddenly becomes heavyweight vehicle that can push around tanks at its will (if placed at the bottom of the vehicle)
The buoyancy blocks allow you to just float on water, and using the actual buoyancy block, you can change between being a submarine and being a boat.
=== Gadgets ===
Gadgets are various gadgets and combat equipment for your vehicles. This is where you now make a choice. Do you use the guns to make the worst possible vehicles, or do you use everything efficiently and possible make the best vehicle to exist?
There’s many guns, but many counters to it. This includes fighting with fire, and being a complete tank build with much armour. With 1.6, the airborne update brought a free targeting system, which helps with aiming, which can be turned off, or weakened, when wanted
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met. Some may require little-to-no skill or knowledge, such as the Altitude logic block, or Distance logic block, or the Angle logic block, but AND, OR, XOR and similar logic gates are complex, and can only be successfully used by those confident in the field of computer science and logic gates. Be wary what you get yourself into, Trailmakers
[[Category:Trailmakers]]
[[Category:Balance Blocks]]
[[Category:Inflatable Balloon]]
9cf3859b8f8c21af83cc71ce7073f3bdee7dc3dc
734
733
2024-03-05T16:43:10Z
Moto28
432060
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles. These will make up the structure of your build, being both internal and external, aesthetics and frame. Be careful with placement, you don’t want to use too many and reach the complexity limit, or make it so there is a random 1x1 hole that cannot be fixed easily
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]], which can give power to a land-based vehicle, such as Bulldawg engine, RAW engine and Dragon engine, ranging from low power, to higher power, with certain engines being heavier than others, and having different acceleration speeds.
*[[Hover Blocks]], which are blocks like the hover pad, which allows you to float at a specified distance above the ground, and can be used upside down to become a wall-rider. (It can also be used in glitches)
*[[Thruster Blocks]], blocks such as Mini-thruster, RAW thruster, Dragon engine, and more with the 1.6 update, these allow propulsion on land and air, only being stopped by the sea, in which most propulsion blocks, other than underwater-centred blocks still work.
*[[Propeller blocks|Propeller Blocks]], which some of them are Propellors, Underwater propellers, Heli engine V1 and V2 (stackable/non-stackable), which all have their own functions.
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available. You can also limit these power cores in sandbox game modes from a range of 1-30, or not at all, same goes with complexity, being a range of 1(?)-700.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground. These can come in many shapes and sizes. Some may be only 3x3, while some may be 7x7, some are thin, some are thick, and they all have different grip on different terrains.
Go kart wheels or slim wheels (or landing gear) can be used on planes due to their small size or lightweightdness, while truck wheels or monster truck wheels can be used on grip-focussed vehicles, and may help making a multipurpose vehicle, although, aerodynamically? not the best. keep the speed to the lighter, smaller wheels
.
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle. These can be used in simple ways, such as decreasing weight when needed, moving wheels left and right, adding suspension to a vehicle, or can be used in a more complex way. They aren’t limited to just that though, they can be used to make complex mechanical arms, make well-made battlebots that may dominate every battle, or even just combining them with logic, and allowing extreme contraptions to be made that can confuse new and old members of the game.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds. These can be used as aesthetics to make the build more slick, using wedges to make builds look cleaner, or to make them more aerodynamic, or both.
There’s multiple types, like wedges (1x2 and 2x1 to 1x4 and 4x4), rounded (1x2, 2x4x2, etc), and corner (2x2x2, 2x1x2, 3x1x3, 4x1x4 and inverted corners for those). If you think you cannot fit a wedge into your build, or cannot fit a type of aerodynamic block into your build, you probably can by moving blocks around.
=== [[Weapons]] ===
Lights are used to illuminate your vehicles. They can also be used to decorate parts of a vehicle to make them look more dramatic, or to give off the effect of an ominous presence, or some form of higher being if used correctly.
There are only 4 designated light blocks that aren’t accessories, and they’re headlight V1 and 2, one being a bottom attack point, the other being directly on top of the connection point, same goes with twilight V1 and 2.
=== [[Lift and Drag Blocks]] ===
Lift and Drag Blocks help lift your vehicles up, or push them down. This is how you make planes, and how you can also make things glide in the air.
There are powered and unpowered aerodynamic blocks for small, simple and normal tailfins, small tailfin are 2x2x1, making them easy to place, but may not be as great to use as the simple tailfin, which may be 4x4x5, and the normal tailfin. The normal tailfin is the only tailfin to have a 2x2 attachment point on top of it, allowing it to have extra blocks attached onto it. It is 4x4x2, which is the widest out of all 3. The powered tailfins are more aerodynamic, but require a power core each, while the unpowered aren’t as efficient in air, but are effective for saving power cores.
Wings come in 2 forms, small and large modular, one taking 2x1x4, the other taking 4x1x4, but each one being better in their own situation. The smaller isn’t as effective in air, but can be used to carry smaller planes into the sky with propulsion. Larger ones are meant for heavier and larger aircraft. Neither have a powered version. The 1.6 update brought more forms of wings, but their best experiences to figure out what they do
=== [[Tube Blocks]] ===
Tube Blocks provide a modular system of tubes to use in your vehicles. Many people normally skip over these blocks, thinking of them as worse looking frame blocks, and ignoring them. They hold a secret block a surprising amount of people don’t know about. The only 1x1x1 block to exist in Trailmakers (to my knowledge), that has all 6 connection points as well, and uses no mods at all, meaning it’s completely vanilla.
=== [[Balance Blocks]] ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant. When first looking at these, you may only use the buoyancy blocks or pontoons, but the weight blocks are life changers, or even life savers depending on the situation. A build that may flip over every turn can suddenly becomes heavyweight vehicle that can push around tanks at its will (if placed at the bottom of the vehicle)
The buoyancy blocks allow you to just float on water, and using the actual buoyancy block, you can change between being a submarine and being a boat.
=== [[Gadgets]] ===
Gadgets are various gadgets and combat equipment for your vehicles. This is where you now make a choice. Do you use the guns to make the worst possible vehicles, or do you use everything efficiently and possible make the best vehicle to exist?
There’s many guns, but many counters to it. This includes fighting with fire, and being a complete tank build with much armour. With 1.6, the airborne update brought a free targeting system, which helps with aiming, which can be turned off, or weakened, when wanted
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met. Some may require little-to-no skill or knowledge, such as the Altitude logic block, or Distance logic block, or the Angle logic block, but AND, OR, XOR and similar logic gates are complex, and can only be successfully used by those confident in the field of computer science and logic gates. Be wary what you get yourself into, Trailmakers
[[Category:Trailmakers]]
e2c3429be8c722f2daeebb488355429c9501f659
Frame Blocks
0
19
735
101
2024-03-05T16:53:25Z
Moto28
432060
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
<tabber>
|-|Blocks=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Grid Blocks=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Connectors=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Shield=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Extras=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
=== 1. Blocks ===
"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides
=== 2. Grid Blocks ===
"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.
=== 3. Connectors ===
"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.
=== 4. Shield ===
"Armor for your vehicle" - Used as defense against projectiles launched from the cannons, Also useful for covering up studs on blocks for a sleeker look.
===5. Extras===
The Frame section also includes the following blocks: Small Porthole, Large Porthole, Airplane Window, and Mast (High Seas DLC).
{| class="fandom-table"
|+Frame Blocks
!Name
!Size
!Weight
|-
|Block 1x2
|1x2x2
|0.6 kg
|-
|Block 1x3
|1x3x1
|0.9 kg
|-
|Block 1x4
|1x4x1
|1.2kg
|-
|Block 2x4
|2x4x1
|2.5 kg
|-
|Block 2x2x2
|2x2x2
|2.5 kg
|-
|Block 4x8
|4x8x1
|10 kg
|-
| colspan="3" |
|-
|Grid Block 1x2
|1x2x1
|0.3 kg
|-
|Grid Block 1x4
|1x4x1
| 0.6 kg
|-
| colspan="3" |
|-
| Flat Connector 1x2
|1x2x1*
|0.1 kg
|-
|Flat Connector 1x3
|1x3x1*
|0.2 kg
|-
|Flat Connector 1x4
|1x4x1*
|0.2 kg
|-
| colspan="3" |
|-
|Shield 2x1
|2x1x1*
|0.6 kg
|-
|Shield 2x2
|2x2x1*
|1.2 kg
|-
|Shield 2x4
|2x4x1*
|2.5 kg
|-
| colspan="3" |
|-
|Small Porthole
|1x2x1
|1.2 Kg
|-
|Large Porthole
|4x4x3
|5 kg
|-
|Airplane Window
|2x2x1
|1.1 kg
|-
|Mast
|2x8x2
|5 kg
|}
[[File:All Frame Blocks Image.jpg|frameless|992x992px]]
b1304674fd86c6b3c6081ce91af6833fc352a65b
736
735
2024-03-05T16:59:49Z
Moto28
432060
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
<tabber>
|-|Blocks=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Block 1x2
|image=
|caption=
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 1x3
|image=
|caption=
|weight= 0.9kg
|size= 1x3x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 1x4
|image=
|caption=
|weight= 1.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 2x4
|image=
|caption=
|weight= 2.5kg
|size= 2x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 2x2x2
|image=
|caption=
|weight= 2.5kg
|size= 2x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 4x8
|image=
|caption=
|weight= 10kg
|size= 4x8x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Grid Blocks=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Connectors=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Shield=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Extras=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
=== 1. Blocks ===
"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides
=== 2. Grid Blocks ===
"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.
=== 3. Connectors ===
"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.
=== 4. Shield ===
"Armor for your vehicle" - Used as defense against projectiles launched from the cannons, Also useful for covering up studs on blocks for a sleeker look.
===5. Extras===
The Frame section also includes the following blocks: Small Porthole, Large Porthole, Airplane Window, and Mast (High Seas DLC).
{| class="fandom-table"
|+Frame Blocks
!Name
!Size
!Weight
|-
|Block 1x2
|1x2x2
|0.6 kg
|-
|Block 1x3
|1x3x1
|0.9 kg
|-
|Block 1x4
|1x4x1
|1.2kg
|-
|Block 2x4
|2x4x1
|2.5 kg
|-
|Block 2x2x2
|2x2x2
|2.5 kg
|-
|Block 4x8
|4x8x1
|10 kg
|-
| colspan="3" |
|-
|Grid Block 1x2
|1x2x1
|0.3 kg
|-
|Grid Block 1x4
|1x4x1
| 0.6 kg
|-
| colspan="3" |
|-
| Flat Connector 1x2
|1x2x1*
|0.1 kg
|-
|Flat Connector 1x3
|1x3x1*
|0.2 kg
|-
|Flat Connector 1x4
|1x4x1*
|0.2 kg
|-
| colspan="3" |
|-
|Shield 2x1
|2x1x1*
|0.6 kg
|-
|Shield 2x2
|2x2x1*
|1.2 kg
|-
|Shield 2x4
|2x4x1*
|2.5 kg
|-
| colspan="3" |
|-
|Small Porthole
|1x2x1
|1.2 Kg
|-
|Large Porthole
|4x4x3
|5 kg
|-
|Airplane Window
|2x2x1
|1.1 kg
|-
|Mast
|2x8x2
|5 kg
|}
[[File:All Frame Blocks Image.jpg|frameless|992x992px]]
4d59fc15dfc88f48e1b33abefd021da2b663f3be
737
736
2024-03-05T17:01:56Z
Moto28
432060
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
<tabber>
|-|Blocks=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Block 1x2
|image=
|caption=
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 1x3
|image=
|caption=
|weight= 0.9kg
|size= 1x3x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 1x4
|image=
|caption=
|weight= 1.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 2x4
|image=
|caption=
|weight= 2.5kg
|size= 2x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 2x2x2
|image=
|caption=
|weight= 2.5kg
|size= 2x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 4x8
|image=
|caption=
|weight= 10kg
|size= 4x8x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Grid Blocks=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Grid Block 1x2
|image=
|caption=
|weight= 0.3kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Grid Block 1x4
|image=
|caption=
|weight= 0.6kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Connectors=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Shield=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Extras=
<br>
{{Flexstart|inline}}
{{PIblock
|title=
|image=
|caption=
|weight=
|size=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
=== 1. Blocks ===
"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides
=== 2. Grid Blocks ===
"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.
=== 3. Connectors ===
"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.
=== 4. Shield ===
"Armor for your vehicle" - Used as defense against projectiles launched from the cannons, Also useful for covering up studs on blocks for a sleeker look.
===5. Extras===
The Frame section also includes the following blocks: Small Porthole, Large Porthole, Airplane Window, and Mast (High Seas DLC).
{| class="fandom-table"
|+Frame Blocks
!Name
!Size
!Weight
|-
|Block 1x2
|1x2x2
|0.6 kg
|-
|Block 1x3
|1x3x1
|0.9 kg
|-
|Block 1x4
|1x4x1
|1.2kg
|-
|Block 2x4
|2x4x1
|2.5 kg
|-
|Block 2x2x2
|2x2x2
|2.5 kg
|-
|Block 4x8
|4x8x1
|10 kg
|-
| colspan="3" |
|-
|Grid Block 1x2
|1x2x1
|0.3 kg
|-
|Grid Block 1x4
|1x4x1
| 0.6 kg
|-
| colspan="3" |
|-
| Flat Connector 1x2
|1x2x1*
|0.1 kg
|-
|Flat Connector 1x3
|1x3x1*
|0.2 kg
|-
|Flat Connector 1x4
|1x4x1*
|0.2 kg
|-
| colspan="3" |
|-
|Shield 2x1
|2x1x1*
|0.6 kg
|-
|Shield 2x2
|2x2x1*
|1.2 kg
|-
|Shield 2x4
|2x4x1*
|2.5 kg
|-
| colspan="3" |
|-
|Small Porthole
|1x2x1
|1.2 Kg
|-
|Large Porthole
|4x4x3
|5 kg
|-
|Airplane Window
|2x2x1
|1.1 kg
|-
|Mast
|2x8x2
|5 kg
|}
[[File:All Frame Blocks Image.jpg|frameless|992x992px]]
b48d7f18cdb6ac5c791a4d5fe84c59422f0c9878
738
737
2024-03-05T17:19:32Z
Moto28
432060
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
<tabber>
|-|Blocks=
'''"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Block 1x2
|image= SA_01.png
|caption=
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 1x3
|image= SA_01.png
|caption=
|weight= 0.9kg
|size= 1x3x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 1x4
|image= SA_01.png
|caption=
|weight= 1.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 2x4
|image= SA_01.png
|caption=
|weight= 2.5kg
|size= 2x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 2x2x2
|image= SA_01.png
|caption=
|weight= 2.5kg
|size= 2x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 4x8
|image= SA_01.png
|caption=
|weight= 10kg
|size= 4x8x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Grid Blocks=
'''"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Grid Block 1x2
|image= SA_01.png
|caption=
|weight= 0.3kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Grid Block 1x4
|image= SA_01.png
|caption=
|weight= 0.6kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Connectors=
'''"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Flat Connector 1x2
|image= SA_01.png
|caption=
|weight= 0.1kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Flat Connector 1x3
|image= SA_01.png
|caption=
|weight= 0.2kg
|size= 1x3x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Flat Connector 1x4
|image= SA_01.png
|caption=
|weight= 0.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Shield=
'''"Armor for your vehicle" - Used as defense against projectiles launched from the cannons, Also useful for covering up studs on blocks for a sleeker look.'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Shield 2x1
|image= SA_01.png
|caption=
|weight= 0.6kg
|size= 2x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Shield 2x2
|image= SA_01.png
|caption=
|weight= 1.2kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Shield 2x4
|image= SA_01.png
|caption=
|weight= 2.5kg
|size= 2x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Extras=
'''The Frame section also includes the following blocks: Small Porthole, Large Porthole, Airplane Window, and Mast (High Seas DLC).'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Small Porthole
|image= SA_01.png
|caption=
|weight= 1.2kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Large Porthole
|image= SA_01.png
|caption=
|weight= 5kg
|size= 4x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Airplane Window
|image= SA_01.png
|caption=
|weight= 1.1kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Mast
|image= SA_01.png
|caption=
|weight= 5kg
|size= 2x8x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
[[File:All Frame Blocks Image.jpg|frameless|992x992px]]
8a7aeeeecb0b61a1a0574966802e7df4ef063abf
Frame Blocks
0
19
739
738
2024-03-05T17:20:07Z
Moto28
432060
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
<tabber>
|-|Blocks=
'''"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Block 1x2
|image= SA_01.png
|caption=
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 1x3
|image= SA_01.png
|caption=
|weight= 0.9kg
|size= 1x3x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 1x4
|image= SA_01.png
|caption=
|weight= 1.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 2x4
|image= SA_01.png
|caption=
|weight= 2.5kg
|size= 2x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 2x2x2
|image= SA_01.png
|caption=
|weight= 2.5kg
|size= 2x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 4x8
|image= SA_01.png
|caption=
|weight= 10kg
|size= 4x8x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Grid Blocks=
'''"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Grid Block 1x2
|image= SA_01.png
|caption=
|weight= 0.3kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Grid Block 1x4
|image= SA_01.png
|caption=
|weight= 0.6kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Connectors=
'''"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Flat Connector 1x2
|image= SA_01.png
|caption=
|weight= 0.1kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Flat Connector 1x3
|image= SA_01.png
|caption=
|weight= 0.2kg
|size= 1x3x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Flat Connector 1x4
|image= SA_01.png
|caption=
|weight= 0.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Shield=
'''"Armor for your vehicle" - Used as defense against projectiles launched from the cannons, Also useful for covering up studs on blocks for a sleeker look.'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Shield 2x1
|image= SA_01.png
|caption=
|weight= 0.6kg
|size= 2x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Shield 2x2
|image= SA_01.png
|caption=
|weight= 1.2kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Shield 2x4
|image= SA_01.png
|caption=
|weight= 2.5kg
|size= 2x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Extras=
'''The Frame section also includes the following blocks: Small Porthole, Large Porthole, Airplane Window, and Mast (High Seas DLC).'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Small Porthole
|image= SA_01.png
|caption=
|weight= 1.2kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Large Porthole
|image= SA_01.png
|caption=
|weight= 5kg
|size= 4x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Airplane Window
|image= SA_01.png
|caption=
|weight= 1.1kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Mast
|image= SA_01.png
|caption=
|weight= 5kg
|size= 2x8x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
bf1166792d917cbe5d77105df694b5251c31991e
Blocks
0
6
740
734
2024-03-05T17:26:16Z
Moto28
432060
wikitext
text/x-wiki
{{Stub}}
'''Blocks''' are the main materials in [[Trailmakers]].
Made from physical building blocks, each block has unique features like shape, weight and functionality. They can be broken off, refitted and used to build something new. Individually the blocks are fairly simple, but combined the possibilities are endless.
==Block types==
=== [[Seats]] ===
Blocks you can sit in to control your vehicle
=== [[Frame Blocks]] ===
The main structural building blocks for your vehicles. These will make up the structure of your build, being both internal and external, aesthetics and frame. Be careful with placement, you don’t want to use too many and reach the complexity limit, or make it so there is a random 1x1 hole that cannot be fixed easily
===[[Propulsion Blocks]]===
This type of block provides power or thrust to your vehicle. Some types of propulsion blocks include:
*[[Engine Blocks]], which can give power to a land-based vehicle, such as Bulldawg engine, RAW engine and Dragon engine, ranging from low power, to higher power, with certain engines being heavier than others, and having different acceleration speeds.
*[[Hover Blocks]], which are blocks like the hover pad, which allows you to float at a specified distance above the ground, and can be used upside down to become a wall-rider. (It can also be used in glitches)
*[[Thruster Blocks]], blocks such as Mini-thruster, RAW thruster, Dragon engine, and more with the 1.6 update, these allow propulsion on land and air, only being stopped by the sea, in which most propulsion blocks, other than underwater-centred blocks still work.
*[[Propeller blocks|Propeller Blocks]], which some of them are Propellors, Underwater propellers, Heli engine V1 and V2 (stackable/non-stackable), which all have their own functions.
In some game modes the amount of engine blocks that may be placed on your vehicle are limited by the number of [[power cores]] you have available. You can also limit these power cores in sandbox game modes from a range of 1-30, or not at all, same goes with complexity, being a range of 1(?)-700.
=== [[Wheels]] ===
Wheels are used to help your vehicles move better on the ground. These can come in many shapes and sizes. Some may be only 3x3, while some may be 7x7, some are thin, some are thick, and they all have different grip on different terrains.
Go kart wheels or slim wheels (or landing gear) can be used on planes due to their small size or lightweightdness, while truck wheels or monster truck wheels can be used on grip-focussed vehicles, and may help making a multipurpose vehicle, although, aerodynamically? not the best. keep the speed to the lighter, smaller wheels
.
===[[Mechanical Blocks]]===
Mechanical Blocks can move to give functionality to a vehicle. These can be used in simple ways, such as decreasing weight when needed, moving wheels left and right, adding suspension to a vehicle, or can be used in a more complex way. They aren’t limited to just that though, they can be used to make complex mechanical arms, make well-made battlebots that may dominate every battle, or even just combining them with logic, and allowing extreme contraptions to be made that can confuse new and old members of the game.
===[[Aerodynamic Blocks]]===
Aerodynamic Blocks allow air to pass around them more easily, resulting in higher top speeds. These can be used as aesthetics to make the build more slick, using wedges to make builds look cleaner, or to make them more aerodynamic, or both.
There’s multiple types, like wedges (1x2 and 2x1 to 1x4 and 4x4), rounded (1x2, 2x4x2, etc), and corner (2x2x2, 2x1x2, 3x1x3, 4x1x4 and inverted corners for those). If you think you cannot fit a wedge into your build, or cannot fit a type of aerodynamic block into your build, you probably can by moving blocks around.
=== [[Weapons]] ===
Lights are used to illuminate your vehicles. They can also be used to decorate parts of a vehicle to make them look more dramatic, or to give off the effect of an ominous presence, or some form of higher being if used correctly.
There are only 4 designated light blocks that aren’t accessories, and they’re headlight V1 and 2, one being a bottom attack point, the other being directly on top of the connection point, same goes with twilight V1 and 2.
=== [[Lift and Drag Blocks]] ===
Lift and Drag Blocks help lift your vehicles up, or push them down. This is how you make planes, and how you can also make things glide in the air.
There are powered and unpowered aerodynamic blocks for small, simple and normal tailfins, small tailfin are 2x2x1, making them easy to place, but may not be as great to use as the simple tailfin, which may be 4x4x5, and the normal tailfin. The normal tailfin is the only tailfin to have a 2x2 attachment point on top of it, allowing it to have extra blocks attached onto it. It is 4x4x2, which is the widest out of all 3. The powered tailfins are more aerodynamic, but require a power core each, while the unpowered aren’t as efficient in air, but are effective for saving power cores.
Wings come in 2 forms, small and large modular, one taking 2x1x4, the other taking 4x1x4, but each one being better in their own situation. The smaller isn’t as effective in air, but can be used to carry smaller planes into the sky with propulsion. Larger ones are meant for heavier and larger aircraft. Neither have a powered version. The 1.6 update brought more forms of wings, but their best experiences to figure out what they do
=== [[Tube Blocks]] ===
Tube Blocks provide a modular system of tubes to use in your vehicles. Many people normally skip over these blocks, thinking of them as worse looking frame blocks, and ignoring them. They hold a secret block a surprising amount of people don’t know about. The only 1x1x1 block to exist in Trailmakers (to my knowledge), that has all 6 connection points as well, and uses no mods at all, meaning it’s completely vanilla.
=== [[Balance Blocks]] ===
Balance blocks can make your vehicle heavy, balance it out, or make it buoyant. When first looking at these, you may only use the buoyancy blocks or pontoons, but the weight blocks are life changers, or even life savers depending on the situation. A build that may flip over every turn can suddenly becomes heavyweight vehicle that can push around tanks at its will (if placed at the bottom of the vehicle)
The buoyancy blocks allow you to just float on water, and using the actual buoyancy block, you can change between being a submarine and being a boat.
=== [[Gadgets]] ===
Gadgets are various gadgets and combat equipment for your vehicles. This is where you now make a choice. Do you use the guns to make the worst possible vehicles, or do you use everything efficiently and possible make the best vehicle to exist?
There’s many guns, but many counters to it. This includes fighting with fire, and being a complete tank build with much armour. With 1.6, the airborne update brought a free targeting system, which helps with aiming, which can be turned off, or weakened, when wanted
===[[Logic Blocks]] ===
Logic Blocks provide output when certain logical conditions are met. Some may require little-to-no skill or knowledge, such as the Altitude logic block, or Distance logic block, or the Angle logic block, but AND, OR, XOR and similar logic gates are complex, and can only be successfully used by those confident in the field of computer science and logic gates. Be wary what you get yourself into, Trailmakers
[[Category:Trailmakers]]
178d0598bc1c22e89fc4334c2ad8e433fca3fa83
Seats
0
179
741
2024-03-05T17:54:58Z
Moto28
432060
Created page with "== Overview == "Blocks you can sit in to control your vehicle." {{Flexend}} {{Flexstart|inline}} {{PIblock |title= Seat |image= SA_01.png |caption= "Vehicle seat with fortified roll cage." |weight= 31.8kg |size= 2x4x4 |hp= |aero= |other= |about= }} {{Flexend}} <!-- ==================================================================================================================================== --> {{Flexend}} {{Flexstart|inline}} {{PIblock |title= VIP Seat |image=..."
wikitext
text/x-wiki
== Overview ==
"Blocks you can sit in to control your vehicle."
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Seat
|image= SA_01.png
|caption= "Vehicle seat with fortified roll cage."
|weight= 31.8kg
|size= 2x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= VIP Seat
|image= SA_01.png
|caption= "A special seat for a VIP -You!"
|weight= 32kg
|size= 2x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Armoured Seat
|image= SA_01.png
|caption= "A seat that is highly resistant to impact damage. Offers high protection from explosives"
|weight= 50kg
|size= 2x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Cockpit
|image= SA_01.png
|caption= "An aerodynamic flight seat."
|weight= 25kg
|size= 2x5x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Space Fighter Cockpit
|image= SA_01.png
|caption= "A slick seat for your spaceship."
|weight= 25kg
|size= 2x6x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Large Cockpit
|image= SA_01.png
|caption= "A large aerodynamic flight seat."
|weight= 50kg
|size= 4x6x5
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Spaceship Cockpit
|image= SA_01.png
|caption= "To infinity and beyond!"
|weight= 50kg
|size= 4x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Go-Kart Seat
|image= SA_01.png
|caption= "A light seat that provides very little protection."
|weight= 17.5kg
|size= 2x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= OperatorSeat
|image= SA_01.png
|caption= "Upright seat with stick controls for the pilot."
|weight= 30kg
|size= 2x3x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Diving Bell
|image= SA_01.png
|caption= "An underwater seat for submersible vehicles."
|weight= 30kg
|size= 4x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Motorcycle Seat
|image= SA_01.png
|caption= "A seat for a motorcycle."
|weight= 17.5kg
|size= 3x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Ship's Wheel
|image= SA_01.png
|caption= "Used to steer a ship."
|weight= 30kg
|size= 4x2x5
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Crow's Nest
|image= SA_01.png
|caption= "Used to steer a ship from high up in the mast."
|weight= 30kg
|size= 4x4x5
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Chirpo Passenger Seat
|image= SA_01.png
|caption= "Fits a single Chirpo passenger."
|weight= 10kg
|size= 2x2x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
d5b20b9c07b32e839b57340a7c6ddf0878d35c66
785
741
2024-03-07T20:25:06Z
Lukkram
396381
wikitext
text/x-wiki
== Overview ==
"Blocks you can sit in to control your vehicle."
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Seat
|image= SA_01.png
|caption= "Vehicle seat with fortified roll cage."
|weight= 31.7666 kg
|size= 2x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= VIP Seat
|image= SA_01.png
|caption= "A special seat for a VIP -You!"
|weight= 32kg
|size= 2x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Armoured Seat
|image= SA_01.png
|caption= "A seat that is highly resistant to impact damage. Offers high protection from explosives"
|weight= 50kg
|size= 2x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Cockpit
|image= SA_01.png
|caption= "An aerodynamic flight seat."
|weight= 25kg
|size= 2x5x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Space Fighter Cockpit
|image= SA_01.png
|caption= "A slick seat for your spaceship."
|weight= 25kg
|size= 2x6x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Large Cockpit
|image= SA_01.png
|caption= "A large aerodynamic flight seat."
|weight= 50kg
|size= 4x6x5
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Spaceship Cockpit
|image= SA_01.png
|caption= "To infinity and beyond!"
|weight= 50kg
|size= 4x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Go-Kart Seat
|image= SA_01.png
|caption= "A light seat that provides very little protection."
|weight= 17.5kg
|size= 2x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= OperatorSeat
|image= SA_01.png
|caption= "Upright seat with stick controls for the pilot."
|weight= 30kg
|size= 2x3x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Diving Bell
|image= SA_01.png
|caption= "An underwater seat for submersible vehicles."
|weight= 30kg
|size= 4x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Motorcycle Seat
|image= SA_01.png
|caption= "A seat for a motorcycle."
|weight= 17.5kg
|size= 3x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Ship's Wheel
|image= SA_01.png
|caption= "Used to steer a ship."
|weight= 30kg
|size= 4x2x5
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Crow's Nest
|image= SA_01.png
|caption= "Used to steer a ship from high up in the mast."
|weight= 30kg
|size= 4x4x5
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Chirpo Passenger Seat
|image= SA_01.png
|caption= "Fits a single Chirpo passenger."
|weight= 10kg
|size= 2x2x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
d8cc4827e5f15c81be449897a2358e80cbd06e3c
786
785
2024-03-07T20:45:26Z
Lukkram
396381
wikitext
text/x-wiki
== Overview ==
"Blocks you can sit in to control your vehicle."
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Seat
|image= SA_01.png
|caption= "Vehicle seat with fortified roll cage."
|weight= 31.7666 kg
|size= 2x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= VIP Seat
|image= SA_01.png
|caption= "A special seat for a VIP -You!"
|weight= 32.0166 kg
|size= 2x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Armoured Seat
|image= SA_01.png
|caption= "A seat that is highly resistant to impact damage. Offers high protection from explosives"
|weight= 50 kg
|size= 2x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Cockpit
|image= SA_01.png
|caption= "An aerodynamic flight seat."
|weight= 25 kg
|size= 2x5x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Space Fighter Cockpit
|image= SA_01.png
|caption= "A slick seat for your spaceship."
|weight= 25 kg
|size= 2x6x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Large Cockpit
|image= SA_01.png
|caption= "A large aerodynamic flight seat."
|weight= 50 kg
|size= 4x6x5
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Spaceship Cockpit
|image= SA_01.png
|caption= "To infinity and beyond!"
|weight= 50 kg
|size= 4x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Go-Kart Seat
|image= SA_01.png
|caption= "A light seat that provides very little protection."
|weight= 17.5 kg
|size= 2x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= OperatorSeat
|image= SA_01.png
|caption= "Upright seat with stick controls for the pilot."
|weight= 30 kg
|size= 2x3x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Diving Bell
|image= SA_01.png
|caption= "An underwater seat for submersible vehicles."
|weight= 30 kg
|size= 4x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Motorcycle Seat
|image= SA_01.png
|caption= "A seat for a motorcycle."
|weight= 17.5 kg
|size= 3x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Ship's Wheel
|image= SA_01.png
|caption= "Used to steer a ship."
|weight= 30 kg
|size= 4x2x5
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Crow's Nest
|image= SA_01.png
|caption= "Used to steer a ship from high up in the mast."
|weight= 30 kg
|size= 4x4x5
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Chirpo Passenger Seat
|image= SA_01.png
|caption= "Fits a single Chirpo passenger."
|weight= 10 kg
|size= 2x2x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
f09dfc86e190f9739e9b0611c5bf0ebf4678829b
Wheels
0
50
742
345
2024-03-05T18:26:17Z
Moto28
432060
wikitext
text/x-wiki
'''Wheels''' are blocks in ''[[Trailmakers]]''. They are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be un-powered so they will roll freely, or you can link an '''Engine''' to them to power them. You can also use wheels above and underwater, but engines wont be able to spin them unless the engine is above water.
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Offroad Wheel
|image= SA_01.png
|caption= "Slightly better traction on rough terrain than on tarmac."
|weight= 10kg
|size= 2x3x3
|hp=
|aero=
|other=
|about= The starter wheels in the campaign. They are a medium sized wheel with solid performance on grass/sand/etc. However, they will struggle in mud.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Racing Wheel
|image= SA_01.png
|caption= "Better grip on tarmac than rough terrain."
|weight= 10kg
|size= 2x3x3
|hp=
|aero=
|other=
|about= A medium sized wheel that performs particularly well when on tarmac but entirely fails offroad.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Monster Truck Wheel
|image= SA_01.png
|caption= "Large and heavy wheel with good overall grip."
|weight= 25kg
|size= 4x6x6
|hp=
|aero=
|other=
|about= The largest of all wheels and by far the heaviest. The best wheel in terms of control in mud and offroad terrain, however, it is offset by the fact it will immensely slow a vehicle down due to the weight, friction, and poor aerodynamics.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Go-kart Wheel
|image= SA_01.png
|caption= "Small wheel with better grip on tarmac than rough terrain."
|weight= 2kg
|size= 1x3x3
|hp=
|aero=
|other=
|about= One of the lightest wheels. Almost no traction on anything other than tarmac.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Slim Wheel
|image= SA_01.png
|caption= "Relatively poor grip and speed, but very light weight."
|weight= 1.5kg
|size= 1x3x3
|hp=
|aero=
|other=
|about= A medium sized and thin wheel with atrociously bad control, especially in offroad terrain. Despite its description, it is by far the fastest wheel due to its light weight, aerodynamics, and lack of friction, making it excellent for vehicles that don't need to turn much on the ground (such as drag racers or planes that require runways).
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Drag Racing Wheel
|image= SA_01.png
|caption= "Large wheel with better grip on tarmac than rough terrain."
|weight= 20kg
|size= 4x5x5
|hp=
|aero=
|other=
|about= An enormous wheel that's size is only surpassed by the Monster Truck Wheel. It has the best grip of all wheels on paved surfaces and thus does not easily come off the ground or lose control when turning on its intended surface. Despite its name, in terms of speed it's terrible, as it will slow a vehicle down due to the heavy weight and friction.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Truck Wheel
|image= SA_01.png
|caption= "Large wheel with good overall grip."
|weight= 15kg
|size= 2x5x5
|hp=
|aero=
|other=
|about= A large wheel that performs well on offroad terrain. Not nearly as large or heavy as the Monster Truck Wheel and thus, will not slow a vehicle down as much. While it performs better than most wheels in the mud, it will still suffer from some lack of control.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Spiked Wheel
|image= SA_01.png
|caption= "Good grip on rough terrain."
|weight= 10kg
|size= 2x3x3
|hp=
|aero=
|other=
|about= A medium sized wheel with spikes embedded into it. Has excellent grip in offroad terrain, keeping lighter vehicles grounded when driving offroad while only suffering a slight loss in speed compared to the offroad wheels. However, they still perform poorly in mud. An excellent replacement for the offroad wheels if you favor control over speed.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Motorcycle Wheel
|image= SA_01.png
|caption= "A rad wheel for your hog. Average grip on all surfaces."
|weight= 7.5kg
|size= 1x3x3
|hp=
|aero=
|other=
|about= A medium sized thin wheel with decent control. A very fast wheel that, unlike the Slim Wheel, has some measure of control. In comparison to dedicated offroad/tarmac wheels however, it's flighty and can easily lose control when turning.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Landing Wheels
|image= SA_01.png
|caption= "A pair of landing wheels to fit under an airplane."
|weight= 7.5kg
|size= 2x2x3
|hp=
|aero=
|other=
|about= Simplest wheel to put underneath a vehicle as it has mounting points on the top. Average grip on all surfaces with slightly better grip on tarmac.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Ski
|image= SA_01.png
|caption= "For gliding."
|weight= 0.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about= Not technically a wheel, but still placed under the category. It very easily slides across the ground. Unlike tires, it does not make use of an engine nor does it rotate, and so it requires another form of propulsion (such as a thruster) in order to make use of it.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Hover Block
|image= SA_01.png
|caption= "Lift engine that generates an air cushion under your vehicle."
|weight= 14.1kg
|size= 4x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Friction Pad
|image= SA_01.png
|caption= "A pad with very high friction."
|weight= 0.5kg
|size= 1x1x1
|hp=
|aero=
|other=
|about= A block where one side is a rubber like bump that provides a ton of friction.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
<br />
7b4965f5bfc82a7291199bc1210a0881c1e176f1
743
742
2024-03-05T18:30:47Z
Moto28
432060
wikitext
text/x-wiki
'''Wheels''' are blocks in ''[[Trailmakers]]''. They are used to make something move better on the ground. Wheels are rounded objects even tho, they have an square hitbox in build mode. Wheels can be un-powered so they will roll freely, or you can link an '''Engine''' to them to power them. You can also use wheels above and underwater, but engines wont be able to spin them unless the engine is above water.
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Offroad Wheel
|image= SA_01.png
|caption= "Slightly better traction on rough terrain than on tarmac."
|weight= 10kg
|size= 2x3x3
|hp=
|aero=
|other=
|about= The starter wheels in the campaign. They are a medium sized wheel with solid performance on grass/sand/etc. However, they will struggle in mud.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Racing Wheel
|image= SA_01.png
|caption= "Better grip on tarmac than rough terrain."
|weight= 10kg
|size= 2x3x3
|hp=
|aero=
|other=
|about= A medium sized wheel that performs particularly well when on tarmac but entirely fails offroad.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Monster Truck Wheel
|image= SA_01.png
|caption= "Large and heavy wheel with good overall grip."
|weight= 25kg
|size= 4x6x6
|hp=
|aero=
|other=
|about= The largest of all wheels and by far the heaviest. The best wheel in terms of control in mud and offroad terrain, however, it is offset by the fact it will immensely slow a vehicle down due to the weight, friction, and poor aerodynamics.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Go-kart Wheel
|image= SA_01.png
|caption= "Small wheel with better grip on tarmac than rough terrain."
|weight= 2kg
|size= 1x3x3
|hp=
|aero=
|other=
|about= One of the lightest wheels. Almost no traction on anything other than tarmac.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Slim Wheel
|image= SA_01.png
|caption= "Relatively poor grip and speed, but very light weight."
|weight= 1.5kg
|size= 1x3x3
|hp=
|aero=
|other=
|about= A medium sized and thin wheel with atrociously bad control, especially in offroad terrain. Despite its description, it is by far the fastest wheel due to its light weight, aerodynamics, and lack of friction, making it excellent for vehicles that don't need to turn much on the ground (such as drag racers or planes that require runways).
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Drag Racing Wheel
|image= SA_01.png
|caption= "Large wheel with better grip on tarmac than rough terrain."
|weight= 20kg
|size= 4x5x5
|hp=
|aero=
|other=
|about= An enormous wheel that's size is only surpassed by the Monster Truck Wheel. It has the best grip of all wheels on paved surfaces and thus does not easily come off the ground or lose control when turning on its intended surface. Despite its name, in terms of speed it's terrible, as it will slow a vehicle down due to the heavy weight and friction.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Truck Wheel
|image= SA_01.png
|caption= "Large wheel with good overall grip."
|weight= 15kg
|size= 2x5x5
|hp=
|aero=
|other=
|about= A large wheel that performs well on offroad terrain. Not nearly as large or heavy as the Monster Truck Wheel and thus, will not slow a vehicle down as much. While it performs better than most wheels in the mud, it will still suffer from some lack of control.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Spiked Wheel
|image= SA_01.png
|caption= "Good grip on rough terrain."
|weight= 10kg
|size= 2x3x3
|hp=
|aero=
|other=
|about= A medium sized wheel with spikes embedded into it. Has excellent grip in offroad terrain, keeping lighter vehicles grounded when driving offroad while only suffering a slight loss in speed compared to the offroad wheels. However, they still perform poorly in mud. An excellent replacement for the offroad wheels if you favor control over speed.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Motorcycle Wheel
|image= SA_01.png
|caption= "A rad wheel for your hog. Average grip on all surfaces."
|weight= 7.5kg
|size= 1x3x3
|hp=
|aero=
|other=
|about= A medium sized thin wheel with decent control. A very fast wheel that, unlike the Slim Wheel, has some measure of control. In comparison to dedicated offroad/tarmac wheels however, it's flighty and can easily lose control when turning.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Landing Wheels
|image= SA_01.png
|caption= "A pair of landing wheels to fit under an airplane."
|weight= 7.5kg
|size= 2x2x3
|hp=
|aero=
|other=
|about= Simplest wheel to put underneath a vehicle as it has mounting points on the top. Average grip on all surfaces with slightly better grip on tarmac.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Ski
|image= SA_01.png
|caption= "For gliding."
|weight= 0.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about= Not technically a wheel, but still placed under the category. It very easily slides across the ground. Unlike tires, it does not make use of an engine nor does it rotate, and so it requires another form of propulsion (such as a thruster) in order to make use of it.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Hover Block
|image= SA_01.png
|caption= "Lift engine that generates an air cushion under your vehicle."
|weight= 14.1kg
|size= 4x4x1
|hp=
|aero=
|other=
|about= Can float vehicle on water , when it moves very fast.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Friction Pad
|image= SA_01.png
|caption= "A pad with very high friction."
|weight= 0.5kg
|size= 1x1x1
|hp=
|aero=
|other=
|about= A block where one side is a rubber like bump that provides a ton of friction.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
<br />
22e0c457ced7a176f562f543d17df700fe41e22f
Propulsion Blocks
0
33
744
217
2024-03-05T19:26:45Z
Moto28
432060
wikitext
text/x-wiki
Propulsion Blocks are [[blocks]] that moves your vehicle.
They can be split into the following categories:
<tabber>
|-|Engine Blocks=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Bulldawg Engine
|image= SA_01.png
|caption= "High acceleration. Low top speed."
|weight= 9.4kg
|size= 2x2x1
|power= 333
|dmg=
|hp=
|aero=
|other= PC 1
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= RAW Engine
|image= SA_01.png
|caption= "Low acceleration. High top speed."
|weight= 59.6kg
|size= 2x4x3
|power= 1700
|dmg=
|hp=
|aero=
|other= PC 2
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Dragon Engine
|image= SA_01.png
|caption= "High acceleration. High top speed."
|weight= 25kg
|size= 2x2x2
|power= 3333
|dmg=
|hp=
|aero=
|other= PC 3
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Thruster Blocks=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Rocket Thruster
|image= SA_01.png
|caption= "A tiny and cheap jet engine with low thrust."
|weight= 9.8kg
|size= 1x2x1
|power= 60
|dmg=
|hp=
|aero=
|other= PC 1
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Thruster
|image= SA_01.png
|caption= "A small and cheap jet engine with low thrust."
|weight= 9.8kg
|size= 1x2x2
|power= 80
|dmg=
|hp=
|aero=
|other= PC 1
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= RAW Jet
|image= SA_01.png
|caption= "A very powerful jet engine with a cooldown."
|weight= 53.1kg
|size= 2x5x2
|power= 750
|dmg=
|hp=
|aero=
|other= PC 2
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Dragon Jet
|image= SA_01.png
|caption= "A powerful jet engine that does not overheat."
|weight= 30kg
|size= 2x3x2
|power= 300
|dmg=
|hp=
|aero=
|other= PC 3
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Large Jet
|image= SA_01.png
|caption= "A big and powerful jet engine fit for an airliner."
|weight= 40kg
|size= 4x8x5
|power= 800
|dmg=
|hp=
|aero=
|other= PC 4
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Space Thruster
|image= SA_01.png
|caption= "A powerful thruster fit for a spaceship."
|weight= 15kg
|size= 1x2x2
|power= 250
|dmg=
|hp=
|aero=
|other= PC 3
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Rocket Engine
|image= SA_01.png
|caption= "A rocket engine with a lot of power."
|weight= 100kg
|size= 4x7x4
|power= 1800
|dmg=
|hp=
|aero=
|other= PC 20
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Gimbal Jet
|image= SA_01.png
|caption= "A jet that always fires downwards."
|weight= 9.4kg
|size= 2x2x1
|power=
|dmg=
|hp=
|aero=
|other= PC 1
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Propeller Blocks=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Propeller
|image= SA_01.png
|caption= "Provides propulsive power."
|weight= 12.5kg
|size= 2x2x1
|power=
|dmg=
|hp=
|aero=
|other= PC 2
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Large Propeller
|image= SA_01.png
|caption= "Provides a lot of propulsive power."
|weight= 25kg
|size= 2x2x2
|power=
|dmg=
|hp=
|aero=
|other= PC 3
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Water Blocks=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Outboard Boat Engine
|image= SA_01.png
|caption= "Provides propulsion in water."
|weight= 12.5kg
|size= 2x2x4
|power=
|dmg=
|hp=
|aero=
|other= PC 2
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Underwater Propeller
|image= SA_01.png
|caption= "Provides propulsion in water."
|weight= 12.5kg
|size= 2x4x2
|power=
|dmg=
|hp=
|aero=
|other= PC 1
|about=
}}
{{Flexend}}
</tabber>
* [[Engine Blocks]]
* [[Hover Blocks]]
* [[Thruster Blocks]]
* [[Propeller Blocks]]
900de83af7206c4f37d7450436565e7b72f51f99
746
744
2024-03-05T20:41:07Z
Moto28
432060
wikitext
text/x-wiki
Propulsion Blocks are [[blocks]] that moves your vehicle.
They can be split into the following categories:
<tabber>
|-|Engine Blocks=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Bulldawg Engine
|image= SA_01.png
|caption= "High acceleration. Low top speed."
|powercores= 1
|weight= 9.4kg
|size= 2x2x1
|power= 333
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= RAW Engine
|image= SA_01.png
|caption= "Low acceleration. High top speed."
|powercores= 2
|weight= 59.6kg
|size= 2x4x3
|power= 1700
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Dragon Engine
|image= SA_01.png
|caption= "High acceleration. High top speed."
|powercores= 3
|weight= 25kg
|size= 2x2x2
|power= 3333
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Thruster Blocks=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Rocket Thruster
|image= SA_01.png
|caption= "A tiny and cheap jet engine with low thrust."
|powercores= 1
|weight= 9.8kg
|size= 1x2x1
|power= 60
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Thruster
|image= SA_01.png
|caption= "A small and cheap jet engine with low thrust."
|powercores= 1
|weight= 9.8kg
|size= 1x2x2
|power= 80
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= RAW Jet
|image= SA_01.png
|caption= "A very powerful jet engine with a cooldown."
|powercores= 2
|weight= 53.1kg
|size= 2x5x2
|power= 750
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Dragon Jet
|image= SA_01.png
|caption= "A powerful jet engine that does not overheat."
|powercores= 3
|weight= 30kg
|size= 2x3x2
|power= 300
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Large Jet
|image= SA_01.png
|caption= "A big and powerful jet engine fit for an airliner."
|powercores= 4
|weight= 40kg
|size= 4x8x5
|power= 800
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Space Thruster
|image= SA_01.png
|caption= "A powerful thruster fit for a spaceship."
|powercores= 3
|weight= 15kg
|size= 1x2x2
|power= 250
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Rocket Engine
|image= SA_01.png
|caption= "A rocket engine with a lot of power."
|powercores= 20
|weight= 100kg
|size= 4x7x4
|power= 1800
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Gimbal Jet
|image= SA_01.png
|caption= "A jet that always fires downwards."
|powercores= 1
|weight= 9.4kg
|size= 2x2x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Propeller Blocks=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Propeller
|image= SA_01.png
|caption= "Provides propulsive power."
|powercores= 2
|weight= 12.5kg
|size= 2x2x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Large Propeller
|image= SA_01.png
|caption= "Provides a lot of propulsive power."
|powercores= 3
|weight= 25kg
|size= 2x2x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Water Blocks=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Outboard Boat Engine
|image= SA_01.png
|caption= "Provides propulsion in water."
|powercores= 2
|weight= 12.5kg
|size= 2x2x4
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Underwater Propeller
|image= SA_01.png
|caption= "Provides propulsion in water."
|powercores= 1
|weight= 12.5kg
|size= 2x4x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
</tabber>
* [[Engine Blocks]]
* [[Hover Blocks]]
* [[Thruster Blocks]]
* [[Propeller Blocks]]
6ee9889d969596d7851709dc230b470df4cd38de
Mechanical Blocks
0
28
745
176
2024-03-05T19:55:52Z
Moto28
432060
wikitext
text/x-wiki
{{Stub}}
== Overview ==
"Blocks with mechanical functions," Mechanical Blocks are blocks that move by the Logic Blocks, seat, or another Mechanical Block.
<tabber>
|-|Hinges=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Steering Hinge
|image= SA_01.png
|caption= "Allows a limited angle of rotation perfect for wheels."
|weight= 0.5kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Large Hinge
|image= SA_01.png
|caption= "Allows a limited angle of rotation perfect for wheels."
|weight= 1.1kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Trailer Hinge
|image= SA_01.png
|caption= "Ball hinge with two attachment points."
|weight= 5kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Suspension=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Suspension Spring
|image= SA_01.png
|caption= "Absorbs shock to make your vehicle drive smoother on uneven surfaces."
|weight= 0.5kg
|size= 2x1x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Straight Suspension
|image= SA_01.png
|caption= "Absorbs shock to make your vehicle drive smoother on uneven surfaces."
|weight= 0.5kg
|size= 1x1x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Rotators=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Rotating Servo
|image= SA_01.png
|caption= "Block that can slowly rotate in each direction."
|weight= 5kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Spinning Servo
|image= SA_01.png
|caption= "Block that can spin around quickly."
|weight= 9.1kg
|size= 2x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Helicopter Engine
|image= SA_01.png
|caption= "Block that can spin around quickly."
|powercores= 1
|weight= 5.6kg
|size= 2x2x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Stackable Helicopter Engine
|image= SA_01.png
|caption= "A helicopter engine with a static top and bottom."
|powercores= 1
|weight= 5.6kg
|size= 2x2x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Other=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Piston
|image= SA_01.png
|caption= "Extendable cylinder that moves back and forth."
|weight= 6.4kg
|size= 1x1x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Detachable Block
|image= SA_01.png
|caption= "Detaches the structure it is attached to."
|weight= 1.6kg
|size= 2x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Gyro
|image= SA_01.png
|caption= "Adds rotational control and damping to your vehicle."
|powercores= 1
|weight= 5.6kg
|size= 1x2x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Gyro Stabilizer
|image= SA_01.png
|caption= "Stabilizing gyro that slowly rotates your vehicle towards the up direction of the block."
|powercores= 1
|weight= 5.6kg
|size= 1x2x3
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
</tabber>
da9d3d0e103f6511f00f06043cb7bbf203ff23ea
Aerodynamic Blocks
0
12
747
55
2024-03-05T21:31:19Z
Moto28
432060
wikitext
text/x-wiki
Aerodynamic Blocks are [[blocks]] that are very aerodynamic and good for designs because they allow air to flow past the vehicle and help achieving high speeds, as well as achieve interesting shapes.
<tabber>
|-|Wedges=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Wedge 1x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.3kg
|size= 1x2x1
|hp=
|aero= Fairly
|other= 45°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge 2x1x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.6kg
|size= 2x1x2
|hp=
|aero= Fairly
|other= 45°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge 2x2x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 1.2kg
|size= 2x2x2
|hp=
|aero= Fairly
|other= 45°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge 2x4x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 2.5kg
|size= 2x4x2
|hp=
|aero= Fairly
|other= 45°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge 2x1
|image= SA_01.png
|caption= "A moderately aerodynamic block."
|weight= 0.3kg
|size= 2x1x1
|hp=
|aero= Moderately
|other= 26.6°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge 3x1
|image= SA_01.png
|caption= "A very aerodynamic block."
|weight= 0.5kg
|size= 3x1x1
|hp=
|aero= Very
|other= 18.4°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge 4x1
|image= SA_01.png
|caption= "An extremely aerodynamic block."
|weight= 0.6kg
|size= 4x1x1
|hp=
|aero= Extremely
|other= 14°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge 2x2
|image= SA_01.png
|caption= "A moderately aerodynamic block."
|weight= 0.6kg
|size= 2x2x1
|hp=
|aero= Moderately
|other= 26.6°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge 2x4
|image= SA_01.png
|caption= "A moderately aerodynamic block."
|weight= 1.2kg
|size= 2x4x1
|hp=
|aero= Moderately
|other= 26.6°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge 3x4
|image= SA_01.png
|caption= "A very aerodynamic block."
|weight= 1.9kg
|size= 3x1x1
|hp=
|aero= Very
|other= 18.4°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge 4x4
|image= SA_01.png
|caption= "An extremely aerodynamic block."
|weight= 2.5kg
|size= 4x1x1
|hp=
|aero= Extremely
|other= 14°
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Rounded=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Rounded Corner 1x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.4kg
|size= 2x1x1
|hp=
|aero= Fairly
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rounded 2x1
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.6kg
|size= 2x1x1
|hp=
|aero= Fairly
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rounded 2x4
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 2.2kg
|size= 2x4x1
|hp=
|aero= Fairly
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rounded 2x1x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.8kg
|size= 2x1x2
|hp=
|aero= Fairly
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rounded 2x4x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 3.9kg
|size= 2x4x2
|hp=
|aero= Fairly
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rounded Corner 2x2x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 1.2kg
|size= 2x2x2
|hp=
|aero= Fairly
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rounded 1x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.5kg
|size= 1x2x1
|hp=
|aero= Fairly
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rounded Corner Inverted 1x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.2kg
|size= 1x2x1
|hp=
|aero= Fairly
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rounded Inverted 1x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.3kg
|size= 1x2x1
|hp=
|aero= Fairly
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Corners=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Wedge Corner 2x2x1
|image= SA_01.png
|caption= "A moderately aerodynamic block."
|weight= 0.2kg
|size= 2x2x1
|hp=
|aero= Moderately
|other= 26.6°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge Corner 3x3x1
|image= SA_01.png
|caption= "A very aerodynamic block."
|weight= 0.5kg
|size= 3x3x1
|hp=
|aero= Very
|other= 18.4°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge Corner 4x4x1
|image= SA_01.png
|caption= "An extremely aerodynamic block."
|weight= 0.8kg
|size= 4x4x1
|hp=
|aero= Extremely
|other= 14°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Wedge Corner 2x2x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.4kg
|size= 2x2x2
|hp=
|aero= Fairly
|other= 45°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Inverted Corner 1x2x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 1kg
|size= 2x2x1
|hp=
|aero= Fairly
|other= 26.6°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Inverted Corner 1x3x3
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 2.4kg
|size= 3x3x1
|hp=
|aero= Fairly
|other= 18.4°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Inverted Corner 1x4x4
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 4.2kg
|size= 4x4x1
|hp=
|aero= Fairly
|other= 14°
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Inverted Corner 2x2x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 2.1kg
|size= 2x2x2
|hp=
|aero= Fairly
|other= 45°
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
4e339b3042b31b6dfa11a8fdc6b3b37fc1b5a87c
Weapons
0
151
748
585
2024-03-05T21:51:52Z
Moto28
432060
wikitext
text/x-wiki
Page for Weapons. Information pending
<tabber>
|-|Cannons=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Tiny Cannon
|image= SA_01.png
|caption= "Fires ballistic projectiles."
|powercores= 1
|weight= 1kg
|size= 1x2x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Tiny Blaster
|image= SA_01.png
|caption= "Fires powerful laser blasts."
|powercores= 2
|weight= 7.5kg
|size= 1x2x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Tank Cannon
|image= SA_01.png
|caption= "Fires high explosive projectiles."
|powercores= 2
|weight= 4.9kg
|size= 2x3x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Gunpowder Cannon
|image= SA_01.png
|caption= "Fires cannon balls."
|powercores= 2
|weight= 4.3kg
|size= 2x4x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Smart Cannons=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Smart Cannon
|image= SA_01.png
|caption= "Fires ballistic projectiles and auto aims at your target when in range."
|powercores= 2
|weight= 2.9kg
|size= 2x3x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Blaster
|image= SA_01.png
|caption= "Fires powerful laser blasts and auto aims at your target when in range."
|powercores= 4
|weight= 7.5kg
|size= 2x3x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Large Cannon
|image= SA_01.png
|caption= "Fires explosive projectiles and slowly auto aims at targets."
|powercores= 3
|weight= 3.5kg
|size= 2x3x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Mini Gun
|image= SA_01.png
|caption= "Quickly fires many ballistic projectiles and slightly auto aims at your target when in range."
|powercores= 4
|weight= 4.4kg
|size= 2x6x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= EMP Launcher
|image= SA_01.png
|caption= "Effective against energy shields. Chance to temporarily scramble functional blocks."
|powercores= 4
|weight= 5.4kg
|size= 2x3x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Rocket Launcher
|image= SA_01.png
|caption= "Fires a slow moving explosive rocket. Auto aims at target when in range. Works best for static targets."
|powercores= 4
|weight= 4.4kg
|size= 2x4x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Bomb Bay
|image= SA_01.png
|caption= "Drops a volley of bombs."
|powercores= 2
|weight= 5.4kg
|size= 1x2x4
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Dynamite
|image= SA_01.png
|caption= "Highly explosive! Handle with care!"
|powercores= 1
|weight= 3.1kg
|size= 2x1x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
3adfe5531d3b8a8c69ec343cdfe1a911a09eb4ef
749
748
2024-03-05T21:54:26Z
Moto28
432060
wikitext
text/x-wiki
Weapons are a type of block you use to destroy your targets, they require power cores to work and deal different types of damage.
<tabber>
|-|Cannons=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Tiny Cannon
|image= SA_01.png
|caption= "Fires ballistic projectiles."
|powercores= 1
|weight= 1kg
|size= 1x2x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Tiny Blaster
|image= SA_01.png
|caption= "Fires powerful laser blasts."
|powercores= 2
|weight= 7.5kg
|size= 1x2x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Tank Cannon
|image= SA_01.png
|caption= "Fires high explosive projectiles."
|powercores= 2
|weight= 4.9kg
|size= 2x3x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Gunpowder Cannon
|image= SA_01.png
|caption= "Fires cannon balls."
|powercores= 2
|weight= 4.3kg
|size= 2x4x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Smart Cannons=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Smart Cannon
|image= SA_01.png
|caption= "Fires ballistic projectiles and auto aims at your target when in range."
|powercores= 2
|weight= 2.9kg
|size= 2x3x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Blaster
|image= SA_01.png
|caption= "Fires powerful laser blasts and auto aims at your target when in range."
|powercores= 4
|weight= 7.5kg
|size= 2x3x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Large Cannon
|image= SA_01.png
|caption= "Fires explosive projectiles and slowly auto aims at targets."
|powercores= 3
|weight= 3.5kg
|size= 2x3x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Mini Gun
|image= SA_01.png
|caption= "Quickly fires many ballistic projectiles and slightly auto aims at your target when in range."
|powercores= 4
|weight= 4.4kg
|size= 2x6x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= EMP Launcher
|image= SA_01.png
|caption= "Effective against energy shields. Chance to temporarily scramble functional blocks."
|powercores= 4
|weight= 5.4kg
|size= 2x3x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Rocket Launcher
|image= SA_01.png
|caption= "Fires a slow moving explosive rocket. Auto aims at target when in range. Works best for static targets."
|powercores= 4
|weight= 4.4kg
|size= 2x4x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Bomb Bay
|image= SA_01.png
|caption= "Drops a volley of bombs."
|powercores= 2
|weight= 5.4kg
|size= 1x2x4
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Dynamite
|image= SA_01.png
|caption= "Highly explosive! Handle with care!"
|powercores= 1
|weight= 3.1kg
|size= 2x1x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
2d237157769975466ed84ac003a76584e3546690
Balance Blocks
0
180
750
2024-03-05T22:14:59Z
Moto28
432060
Created page with "Balance blocks Balance blocks!! <tabber> |-|Weights= <br> {{Flexstart|inline}} {{PIblock |title= Weight Block |image= SA_01.png |caption= "Makes your vehicle heavier." |weight= 30kg |size= 2x2x1 |hp= |aero= |other= |about= }} {{Flexend}} {{Flexstart|inline}} {{PIblock |title= Heavy Weight Block |image= SA_01.png |caption= "Makes your vehicle heavier." |weight= 50kg |size= 2x2x1 |hp= |aero= |other= |about= }} {{Flexend}} <!-- =============================================..."
wikitext
text/x-wiki
Balance blocks Balance blocks!!
<tabber>
|-|Weights=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Weight Block
|image= SA_01.png
|caption= "Makes your vehicle heavier."
|weight= 30kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Heavy Weight Block
|image= SA_01.png
|caption= "Makes your vehicle heavier."
|weight= 50kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Pontoons=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Small Pontoon
|image= SA_01.png
|caption= "Provides buoyancy in water."
|weight= 1kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Medium Pontoon
|image= SA_01.png
|caption= "Provides buoyancy in water."
|weight= 3kg
|size= 2x4x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Large Pontoon
|image= SA_01.png
|caption= "Provides buoyancy in water."
|weight= 12kg
|size= 4x8x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Buoyancy Control Device
|image= SA_01.png
|caption= "Block with adjustable buoyancy."
|weight= 3kg
|size= 2x4x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Straight Hull Block
|image= SA_01.png
|caption= "Provides buoyancy in water."
|weight= 12kg
|size= 4x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Middle Hull Block
|image= SA_01.png
|caption= "Provides buoyancy in water."
|weight= 12kg
|size= 4x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Corner Hull Block
|image= SA_01.png
|caption= "Provides buoyancy in water."
|weight= 12kg
|size= 4x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Balloons=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Party Balloon
|image= SA_01.png
|caption= "A small balloon with lift force."
|weight= 0.2kg
|size= 3x3x5
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Inflatable Balloon
|image= SA_01.png
|caption= "Balloon that can inflate and deflate."
|weight= 2.5kg
|size= 6x6x6
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
10cfc7dcac3dfd5cf6739c81da6b63cdfac72e84
Lift and Drag Blocks
0
181
751
2024-03-05T23:02:34Z
Moto28
432060
Created page with "~Take to the skies~ <tabber> |-|Wings= <br> {{Flexstart|inline}} {{PIblock |title= Spoiler |image= SA_01.png |caption= "Provides downforce to make your vehicle stick to the ground." |weight= 0.1kg |size= 4x2x1 |hp= |aero= |other= |about= }} {{Flexend}} {{Flexstart|inline}} {{PIblock |title= Small Modular Wing |image= SA_01.png |caption= "Provides a small amount of lift." |weight= 1kg |size= 4x2x1 |hp= |aero= |other= |about= }} {{Flexend}} {{Flexstart|inline}} {{PIblock |..."
wikitext
text/x-wiki
~Take to the skies~
<tabber>
|-|Wings=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Spoiler
|image= SA_01.png
|caption= "Provides downforce to make your vehicle stick to the ground."
|weight= 0.1kg
|size= 4x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Small Modular Wing
|image= SA_01.png
|caption= "Provides a small amount of lift."
|weight= 1kg
|size= 4x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Modular Wing
|image= SA_01.png
|caption= "Provides a large amount of lift."
|weight= 1.5kg
|size= 4x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Small Flap Wing
|image= SA_01.png
|caption= "Small wing with integrated flap."
|weight= 1kg
|size= 4x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Flap Wing
|image= SA_01.png
|caption= "Wing with integrated flap."
|weight= 1.5kg
|size= 4x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Small Aileron
|image= SA_01.png
|caption= "End of the wing for adjusting roll."
|weight= 0.8kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Aileron
|image= SA_01.png
|caption= "End of wing for adjusting roll"
|weight= 1kg
|size= 4x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Fins=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Small Tailfin
|image= SA_01.png
|caption= "Provides aerodynamic drag and direction stability."
|weight= 1.2kg
|size= 1x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Simple Tailfin
|image= SA_01.png
|caption= "Provides aerodynamic drag and direction stability."
|weight= 1.2kg
|size= 1x5x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tailfin
|image= SA_01.png
|caption= "Provides aerodynamic drag and direction stability."
|weight= 4.6kg
|size= 2x4x4
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Powered Small Tailfin
|image= SA_01.png
|caption= "A tailfin with artificially enhanced drag."
|powercores= 1
|weight= 1.2kg
|size= 1x2x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Powered Simple Tailfin
|image= SA_01.png
|caption= "A tailfin with artificially enhanced drag."
|powercores= 1
|weight= 3kg
|size= 1x5x3
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Powered Tailfin
|image= SA_01.png
|caption= "A tailfin with artificially enhanced drag."
|powercores= 1
|weight= 4.6kg
|size= 2x4x4
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Small Elevator Fin
|image= SA_01.png
|caption= "Tail fin to control pitch on an airplane."
|weight= 1kg
|size= 3x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Big Elevator Fin
|image= SA_01.png
|caption= "Tail fin to control pitch on an airplane."
|weight= 1kg
|size= 5x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Elevator Tail
|image= SA_01.png
|caption= "Tail fins to control pitch on an airplane."
|weight= 2kg
|size= 10x3x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Quantum Rudder
|image= SA_01.png
|caption= "Rotates structure in direction of movement and allows steering, at the cost of speed."
|powercores= 1
|weight= 10g
|size= 2x3x1
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Blades and Paddles=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Short Helicopter Blade
|image= SA_01.png
|caption= "Short blade for a helicopter."
|weight= 1.9kg
|size= 2x6x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Helicopter Blade
|image= SA_01.png
|caption= "Blade for a helicopter."
|weight= 3.3kg
|size= 2x8x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Long Helicopter Blade
|image= SA_01.png
|caption= "Long blade for a helicopter."
|weight= 5.3kg
|size= 2x16x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Oar
|image= SA_01.png
|caption= "Used to move water."
|weight= 0.8kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Paddle
|image= SA_01.png
|caption= "Used to move water."
|weight= 0.8g
|size= 2x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Large Paddle
|image= SA_01.png
|caption= "Used to move a lot of water."
|weight= 2kg
|size= 4x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Sails=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Small Modular Rectangle Sail
|image= SA_01.png
|caption= "A modular sail for sailing a sailboat."
|weight= 1.5kg
|size= 1x6x9
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Big Modular Rectangle Sail
|image= SA_01.png
|caption= "A modular sail for sailing a sailboat."
|weight= 1.5kg
|size= 1x9x12
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Small Modular Triangle Sail
|image= SA_01.png
|caption= "A modular sail for sailing a sailboat."
|weight= 1.5kg
|size= 1x6x9
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Big Modular Triangle Sail
|image= SA_01.png
|caption= "A modular sail for sailing a sailboat."
|weight= 1.5kg
|size= 1x9x12
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tall Modular Triangle Sail
|image= SA_01.png
|caption= "A modular sail for sailing a sailboat."
|weight= 1.5kg
|size= 1x9x24
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
20f835201369c6c7c7159506829c5c8d826fb855
Tube Blocks
0
182
752
2024-03-05T23:21:57Z
Moto28
432060
Created page with "Tubular Pipes <tabber> |-|Tubes= <br> {{Flexstart|inline}} {{PIblock |title= Tube 1x1 |image= SA_01.png |caption= "Modular tube system." |weight= 0.6kg |size= 1x1x1 |hp= |aero= |other= |about= }} {{Flexend}} {{Flexstart|inline}} {{PIblock |title= Tube 1x3 |image= SA_01.png |caption= "Modular tube system." |weight= 1.5kg |size= 1x3x1 |hp= |aero= |other= |about= }} {{Flexend}} {{Flexstart|inline}} {{PIblock |title= Tube 1x4 |image= SA_01.png |caption= "Modular tube system..."
wikitext
text/x-wiki
Tubular Pipes
<tabber>
|-|Tubes=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Tube 1x1
|image= SA_01.png
|caption= "Modular tube system."
|weight= 0.6kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube 1x3
|image= SA_01.png
|caption= "Modular tube system."
|weight= 1.5kg
|size= 1x3x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube 1x4
|image= SA_01.png
|caption= "Modular tube system."
|weight= 2.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube 1x8
|image= SA_01.png
|caption= "Modular tube system."
|weight= 4.5kg
|size= 1x8x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube Slope 1x1x2
|image= SA_01.png
|caption= "Modular tube system."
|weight= 0.9kg
|size= 1x1x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube Slope 2x1x2
|image= SA_01.png
|caption= "Modular tube system."
|weight= 1.9kg
|size= 2x1x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Intersections=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Tube Elbow
|image= SA_01.png
|caption= "Modular tube system."
|weight= 0.6kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube Double Elbow
|image= SA_01.png
|caption= "Modular tube system."
|weight= 0.8kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube Tee
|image= SA_01.png
|caption= "Modular tube system."
|weight= 0.8kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube Double Tee
|image= SA_01.png
|caption= "Modular tube system."
|weight= 1kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube Cross
|image= SA_01.png
|caption= "Modular tube system."
|weight= 0.9kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube Tee Cross
|image= SA_01.png
|caption= "Modular tube system."
|weight= 1.2kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Tube Double Cross
|image= SA_01.png
|caption= "Modular tube system."
|weight= 1.6kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Cones=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Cone 2x2x1
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 1.2kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Cone 2x2x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight=2.5g
|size= 2x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Cone 1x1x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.6kg
|size= 1x1x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Cylinder 1x1x2
|image= SA_01.png
|caption= "A fairly aerodynamic block."
|weight= 0.6kg
|size= 1x1x2
|hp=
|aero= Fairly
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
9597c4851b72781273a64f046a5c819a7db38e99
Gadgets
0
183
753
2024-03-05T23:38:41Z
Moto28
432060
Created page with "¡All the Gadgets! <tabber> |-|Lights= <br> {{Flexstart|inline}} {{PIblock |title= Headlamp |image= SA_01.png |caption= "Lights up the environment." |weight= 1.6kg |size= 1x1x1 |hp= |aero= |other= |about= }} {{Flexend}} {{Flexstart|inline}} {{PIblock |title= Headlamp v2 |image= SA_01.png |caption= "Lights up the environment." |weight= 0.3kg |size= 1x1x1 |hp= |aero= |other= |about= }} {{Flexend}} {{Flexstart|inline}} {{PIblock |title= Large Headlamp |image= SA_01.png |ca..."
wikitext
text/x-wiki
¡All the Gadgets!
<tabber>
|-|Lights=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Headlamp
|image= SA_01.png
|caption= "Lights up the environment."
|weight= 1.6kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Headlamp v2
|image= SA_01.png
|caption= "Lights up the environment."
|weight= 0.3kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Large Headlamp
|image= SA_01.png
|caption= "Lights up the environment even more."
|weight= 4kg
|size= 2x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Taillight
|image= SA_01.png
|caption= "Lights up the environment."
|weight= 1.6kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Taillightv2
|image= SA_01.png
|caption= "Lights up the environment."
|weight= 0.3kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Dispensers=
<br>
{{Flexstart|inline}}
{{PIpowercore
|title= Beach Ball Dispenser
|image= SA_01.png
|caption= "A block that dispenses beach balls."
|powercores= 1
|weight= 3.7kg
|size= 2x2x4
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Snowball Dispenser
|image= SA_01.png
|caption= "A block that dispenses snowballs."
|powercores= 1
|weight= 3.7kg
|size= 2x2x4
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Concrete Wall Dispenser
|image= SA_01.png
|caption= "A block that dispenses concrete walls."
|powercores= 2
|weight= 3.1kg
|size= 2x2x3
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Metal Crate Dispenser
|image= SA_01.png
|caption= "A block that dispenses metal crates."
|powercores= 2
|weight= 3.7kg
|size= 2x2x4
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Dice Dispenser
|image= SA_01.png
|caption= "A block that dispenses dice."
|powercores= 1
|weight= 3.7kg
|size= 2x2x4
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Anchor Pin
|image= SA_01.png
|caption= "Creates an unbreakable connection between the vehicle and whatever it touches.
|weight= 0.3kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Camera Block
|image= SA_01.png
|caption= "Switch your camera to this block.
|weight= 0.3kg
|size= 1x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Tractor Beam
|image= SA_01.png
|caption= "When activated the Tractor Beam attracts loose objects like Salvage, Blocks and Artifacts."
|powercores= 1
|weight= 7.5kg
|size= 2x2x2
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIpowercore
|title= Energy Shield
|image= SA_01.png
|caption= "Limited protection against projectiles, blasters and explosions. Vulnerable to EMP blasts."
|powercores= 3
|weight= 50kg
|size= 3x2x3
|power=
|dmg=
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
4c5eebb7c7c489295756f631881d992e39aa147d
Logic Blocks
0
27
754
170
2024-03-05T23:41:04Z
Moto28
432060
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks, except for the Angle Sensor and Compass which are 1x2x2, that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles. Every logic block weighs 0.6 kg, except the Angle Sensor and Compass, which weigh 1.2 kg.
== How Logic Gates Work ==
There are 8 types of logic blocks in the game:
* AND Gate
* OR Gate
* XOR Gate
* Distance Sensor
*Speed Sensor
*Altitude Sensor
*Angle Sensor
*Compass
Logic Gates work by providing an output based on the input it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
The output of a logic gate is *not* the output you specify in the editor while building. The output of the gates is calculated by adding all the inputs together, rounding down to 1 if it is above, or up to -1 if it is below, then multiplying this value by the "output." This means both AND Gates and OR Gates can output values of zero.
==== AND Gate ====
* The AND Gate only produces its output if all of the inputs are not zero.
* Example: The AND Gate with two inputs receives a 1 and a 0. Because only one of the inputs is a 1, the AND Gate will not send its output. When it receives a 1 and a 1, it will send its output to whatever blocks that are marked to receive it.
*Example 2: An AND Gate with 3 inputs receives a 1, -0.5, and -0.5. Because adding the inputs together equals 0, the AND gate outputs nothing.
==== OR Gate ====
* The OR Gate only produces its output if any of it inputs are not zero.
* Example: An OR Gate with 3 inputs receives a 1, 1, and 0. Because one of the inputs sends a 1, the OR Gate will send its output. If all of the inputs were 0, it would not send any output.
*Example 2: An OR Gate with 3 inputs receives a 1, -0.5, and -0.5. Because adding the inputs together equals 0, the OR gate outputs nothing.
*Note that, like the other gates, the output of the OR Gate is calculated by adding all the inputs together, rounding down to 1 if it is above, or up to -1 if it is below, then multiplying this value by the "output."
==== XOR Gate ====
* The XOR Gate only produces output if exactly one input is not zero.
* Example: An XOR Gate with 3 inputs receives a 1, 1, and 0. Unlike the OR Gate, the XOR Gate will not send its output because the more than a single input is a 1. If the inputs were 0, 0, and 1, the XOR Gate would send its output.
* Note that this is not the case with real-world binary logic, as with actual binary logic, an XOR Gate will send its output if an odd number of inputs are active.
==== Distance Sensor ====
* The Distance Sensor sends output when the distance between the sensing side of the block and another block or object come within a set distance.
==== Speed Sensor ====
* The Speed Sensor sends output when the speed of the block reaches a set speed.
==== Altitude Sensor ====
* The Altitude Sensor sends output when the altitude of the block reaches a certain altitude.
==== Angle Sensor ====
* The Angle Sensor sends output when the angle of the block reaches a set amount.
==== Compass ====
* The Compass sends output when the direction the block is facing falls within a set angle.
==== Connecting Inputs and Outputs ====
Logic Blocks can be connected to any other block that can be controlled with input, including other Logic Blocks. To have a Logic Block control another block, Click the gear icon on the logic block and click the check box on the block that you would like it to control.
== Tips ==
* A single Logic Block can control multiple blocks at a time. If your vehicle has a lot of [[Mechanical Blocks]] to control at once, you can set them to be controlled by a single logic block instead to avoid needing to modify the controls and timing of each block.
5e3a80a216df7edd14264abaa024a6e05d154940
755
754
2024-03-05T23:50:42Z
Moto28
432060
wikitext
text/x-wiki
== Overview ==
Logic Blocks are 1x1x2 sized blocks, except for the Angle Sensor and Compass which are 1x2x2, that simulate the action of Logical Gates. On one of the 1x2 sides, they have a display depicting 2 arrows and a symbol representing their contained Logic Gate. These blocks can be used to create automation and more advanced controls for vehicles. Every logic block weighs 0.6 kg, except the Angle Sensor and Compass, which weigh 1.2 kg.
<tabber>
|-|Using Logic=
<br>
== How Logic Gates Work ==
There are 8 types of logic blocks in the game:
* AND Gate
* OR Gate
* XOR Gate
* Distance Sensor
*Speed Sensor
*Altitude Sensor
*Angle Sensor
*Compass
Logic Gates work by providing an output based on the input it gets. These Logic Blocks can also be controlled directly with a Green (Positive) and a Red (Negative) keyboard inputs. Like other blocks, they also have fields for Timing and Delay.
The output of a logic gate is *not* the output you specify in the editor while building. The output of the gates is calculated by adding all the inputs together, rounding down to 1 if it is above, or up to -1 if it is below, then multiplying this value by the "output." This means both AND Gates and OR Gates can output values of zero.
==== AND Gate ====
* The AND Gate only produces its output if all of the inputs are not zero.
* Example: The AND Gate with two inputs receives a 1 and a 0. Because only one of the inputs is a 1, the AND Gate will not send its output. When it receives a 1 and a 1, it will send its output to whatever blocks that are marked to receive it.
*Example 2: An AND Gate with 3 inputs receives a 1, -0.5, and -0.5. Because adding the inputs together equals 0, the AND gate outputs nothing.
==== OR Gate ====
* The OR Gate only produces its output if any of it inputs are not zero.
* Example: An OR Gate with 3 inputs receives a 1, 1, and 0. Because one of the inputs sends a 1, the OR Gate will send its output. If all of the inputs were 0, it would not send any output.
*Example 2: An OR Gate with 3 inputs receives a 1, -0.5, and -0.5. Because adding the inputs together equals 0, the OR gate outputs nothing.
*Note that, like the other gates, the output of the OR Gate is calculated by adding all the inputs together, rounding down to 1 if it is above, or up to -1 if it is below, then multiplying this value by the "output."
==== XOR Gate ====
* The XOR Gate only produces output if exactly one input is not zero.
* Example: An XOR Gate with 3 inputs receives a 1, 1, and 0. Unlike the OR Gate, the XOR Gate will not send its output because the more than a single input is a 1. If the inputs were 0, 0, and 1, the XOR Gate would send its output.
* Note that this is not the case with real-world binary logic, as with actual binary logic, an XOR Gate will send its output if an odd number of inputs are active.
==== Distance Sensor ====
* The Distance Sensor sends output when the distance between the sensing side of the block and another block or object come within a set distance.
==== Speed Sensor ====
* The Speed Sensor sends output when the speed of the block reaches a set speed.
==== Altitude Sensor ====
* The Altitude Sensor sends output when the altitude of the block reaches a certain altitude.
==== Angle Sensor ====
* The Angle Sensor sends output when the angle of the block reaches a set amount.
==== Compass ====
* The Compass sends output when the direction the block is facing falls within a set angle.
==== Connecting Inputs and Outputs ====
Logic Blocks can be connected to any other block that can be controlled with input, including other Logic Blocks. To have a Logic Block control another block, Click the gear icon on the logic block and click the check box on the block that you would like it to control.
== Tips ==
* A single Logic Block can control multiple blocks at a time. If your vehicle has a lot of [[Mechanical Blocks]] to control at once, you can set them to be controlled by a single logic block instead to avoid needing to modify the controls and timing of each block.
<!-- ==================================================================================================================================== -->
|-|Logic Blocks=
<br>
{{Flexstart|inline}}
{{PIblock
|title= AND Logic Gate
|image= SA_01.png
|caption= "Outputs if ALL input is NOT zero."
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= OR Logic Gate
|image= SA_01.png
|caption= "Outputs if ANY input is NOT zero."
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= XOR Logic Gate
|image= SA_01.png
|caption= "Outputs if ONLY ONE input is NOT zero."
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Distance Sensor
|image= SA_01.png
|caption= "A proximity trigger that can be connected to other blocks."
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Speed Sensor
|image= SA_01.png
|caption= "An adjustable speed sensor that can be connected to other blocks."
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Altitude Sensor
|image= SA_01.png
|caption= "An adjustable altitude sensor that can be connected to other blocks."
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Angle Sensor
|image= SA_01.png
|caption= "An adjustable angle sensor that can be connected to other blocks."
|weight= 1.2kg
|size= 1x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Compass
|image= SA_01.png
|caption= "A compass that can be connected to other blocks, always pointing north."
|weight= 1.2kg
|size= 1x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
1ca7ac10137595614b601d12d5a501a20504c2ed
File:SA 02.png
6
184
756
2024-03-07T16:05:09Z
Lukkram
396381
icon for achievement 02
wikitext
text/x-wiki
== Summary ==
icon for achievement 02
57c5cf092ae04b1de6ff35de3d541e864e67d830
File:SA 03.png
6
185
757
2024-03-07T16:05:35Z
Lukkram
396381
icon for achievement 03
wikitext
text/x-wiki
== Summary ==
icon for achievement 03
f43dcf57d4cf5b2caba900743f306ba6e35186fa
File:SA 04.png
6
186
758
2024-03-07T16:34:16Z
Lukkram
396381
icon for achievement 04
wikitext
text/x-wiki
== Summary ==
icon for achievement 04
530eecf807b950ef7f5491e19aac2f49da7f568e
File:SA 05.png
6
187
759
2024-03-07T16:34:58Z
Lukkram
396381
icon for achievement 05
wikitext
text/x-wiki
== Summary ==
icon for achievement 05
b2ccba1d1ce02fb49da37e4b4705f28996379ce7
File:SA 06.png
6
188
760
2024-03-07T16:39:34Z
Lukkram
396381
icon for achievement 06
wikitext
text/x-wiki
== Summary ==
icon for achievement 06
b14fd03085dbab2e14d215c86be6f40b1a80b9e0
File:SA 07.png
6
189
761
2024-03-07T16:45:55Z
Lukkram
396381
icon for achievement 04
wikitext
text/x-wiki
== Summary ==
icon for achievement 04
530eecf807b950ef7f5491e19aac2f49da7f568e
762
761
2024-03-07T16:46:50Z
Lukkram
396381
wikitext
text/x-wiki
== Summary ==
icon for achievement 07
98e51332f6f4d538d5cfa61fd4e818feea3ae4ed
File:SA 08.png
6
190
763
2024-03-07T16:47:38Z
Lukkram
396381
icon for achievement 08
wikitext
text/x-wiki
== Summary ==
icon for achievement 08
6aca25adcd13007476c8565d64fe1da4432a4d17
File:SA 09.png
6
191
764
2024-03-07T16:49:27Z
Lukkram
396381
icon for achievement 09
wikitext
text/x-wiki
== Summary ==
icon for achievement 09
6fe8118a712de29094a9822143f042aa772d2eda
File:SA 10.png
6
192
765
2024-03-07T16:50:02Z
Lukkram
396381
icon for achievement 10
wikitext
text/x-wiki
== Summary ==
icon for achievement 10
13405d58ad25e4591bc8322dc31eb788b42be4a2
File:SA 12.png
6
193
766
2024-03-07T16:50:37Z
Lukkram
396381
icon for achievement 12
wikitext
text/x-wiki
== Summary ==
icon for achievement 12
828c9490c32da48d2fe0d382af095ac99586182d
File:SA 13.png
6
194
767
2024-03-07T16:51:06Z
Lukkram
396381
icon for achievement 13
wikitext
text/x-wiki
== Summary ==
icon for achievement 13
73abb78721420411a5a73ed105cd70f4525091ef
File:SA 14.png
6
195
768
2024-03-07T16:51:41Z
Lukkram
396381
icon for achievement 14
wikitext
text/x-wiki
== Summary ==
icon for achievement 14
42373245ed5bd21a6bd269a1a4fa5a963fb6f169
File:SA 16.png
6
196
769
2024-03-07T16:53:19Z
Lukkram
396381
icon for achievement 16
wikitext
text/x-wiki
== Summary ==
icon for achievement 16
e51ff9af2e29f2619d0efb50f14c15d4ac819be7
File:SA 17.png
6
197
770
2024-03-07T16:55:18Z
Lukkram
396381
icon for achievement 17
wikitext
text/x-wiki
== Summary ==
icon for achievement 17
f88e9f866fc4d57f74a8df258de527e4d3290b90
File:SA 18.png
6
198
771
2024-03-07T16:56:19Z
Lukkram
396381
icon for achievement 18
wikitext
text/x-wiki
== Summary ==
icon for achievement 18
62695c6c921e327cf77c0448c10fb1a2e8427a4d
File:SA 19.png
6
199
772
2024-03-07T16:56:48Z
Lukkram
396381
icon for achievement 19
wikitext
text/x-wiki
== Summary ==
icon for achievement 19
0b7d057e5487e5e9f326a3e0c640ba66f39c83c9
File:SA 20.png
6
200
773
2024-03-07T16:57:30Z
Lukkram
396381
icon for achievement 20
wikitext
text/x-wiki
== Summary ==
icon for achievement 20
2a7acf312e73e069244eb1b80cf3c1e8ef6508a9
File:SA 21.png
6
201
774
2024-03-07T16:57:58Z
Lukkram
396381
icon for achievement 21
wikitext
text/x-wiki
== Summary ==
icon for achievement 21
ec0e33d8ee877ca02ff3f72611b6ccb99ec15867
File:SA 22.png
6
202
775
2024-03-07T16:58:41Z
Lukkram
396381
icon for achievement 22
wikitext
text/x-wiki
== Summary ==
icon for achievement 22
7d04dc8966cfcaf32fa8cac9d3005831481f88ab
File:SA 23.png
6
203
776
2024-03-07T16:59:26Z
Lukkram
396381
icon for achievement 23
wikitext
text/x-wiki
== Summary ==
icon for achievement 23
42af59b939d3c79fdf13d47c389edc4585c9f0ce
File:SA 24.png
6
204
777
2024-03-07T17:00:04Z
Lukkram
396381
icon for achievement 24
wikitext
text/x-wiki
== Summary ==
icon for achievement 24
4a68c6c082cb08714952439b5197bf2ec1a71ce5
Basement
0
205
778
2024-03-07T17:12:51Z
Lukkram
396381
Created page with "basement page"
wikitext
text/x-wiki
basement page
0923ee8d77924b7a8bae3952bb6bfa88ebf8578e
Achievements
0
56
779
725
2024-03-07T17:26:19Z
Moto28
432060
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. 2 in Danger Zone, 3 in Race Island, 6 in Treasure Island, 3 in Rally Mode, 4 in Stranded in Space & 4 that are't map dependent. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map. ( Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024 )
<tabber>
|-|Danger Zone=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= 3-Pointer
|image= SA_23.png
|caption=
|about= Shoot Hoops on Danger Zone
|steam= 6.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= El Capitan
|image= SA_22.png
|caption=
|about= Reach the Top of Danger Zone
|steam= 8.3%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Race Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Best View In Town
|image= SA_10.png
|caption=
|about= Land on the Lighthouse on Race Island
|steam= 3.5%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Hot Air
|image= SA_09.png
|caption=
|about= Crash into the blimp on Race Island
|steam= 7.5%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Island Hopper
|image= SA_08.png
|caption=
|about= Land in all the floating Islands above Race Island in one session
|steam= 1.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Treasure Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Man In Black
|image= SA_18.png
|caption=
|about= Fly through all the rings of fire in Treasure Island in one session
|steam= 4.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Moby Dick
|image= SA_12.png
|caption=
|about= Bump into the whales in Treasure Island
|steam= 3.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Monster!
|image= SA_16.png
|caption=
|about= Drive over 8 chickens on Treasure Island in one session
|steam= 10.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Pay your respect
|image= SA_24.png
|caption=
|about= Visit the monument on Treasure Island
|steam= 9.5%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Problem Solver
|image= SA_19.png
|caption=
|about= Complete all the ball puzzles on Treasure Island
|steam= 2.0%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Treehugger
|image= SA_21.png
|caption=
|about= Hug the Tree on the Northeastern Island on Treasure Island
|steam= 1.6%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Rally Mode=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Gold Rush
|image= SA_05.png
|caption=
|about= Get gold on Downhill Rush
|steam= 6.2%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Slide to Win
|image= SA_06.png
|caption=
|about= Get gold on Sunny Slide
|steam= 2.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= To Fly or Not To Fly
|image= SA_07.png
|caption=
|about= Get gold on Cliff Land
|steam= 2.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Stranded in Space=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Bring Marshmallows!
|image= SA_03.png
|caption=
|about= Enter the volcano
|steam= 15.4%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Power Core Collector
|image= SA_04.png
|caption=
|about= Find 15 Power Cores in Stranded in Space
|steam= 20.1%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Ready For Takeoff
|image= SA_02.png
|caption=
|about= Rebuild your spaceship
|steam= 9.2%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= So attractive!
|image= SA_01.png
|caption=
|about= Pick up a piece of Salvage
|steam= 35.8%
|xbox=
|ps=
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Car Collector
|image= SA_14.png
|caption=
|about= Download and load in a vehicle from the Workshop
|steam= 51.9%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Leonardo da Vinci
|image= SA_20.png
|caption=
|about= Stay airborne in a zero Power Core vehicle for 60 seconds
|steam= 5.6%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sharing is Caring
|image= SA_13.png
|caption=
|about= Upload a vehicle to the Workshop
|steam= 10.0%
|xbox=
|ps=
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sonic Boom
|image= SA_17.png
|caption=
|about= Break the sound barrier
|steam= 29.2%
|xbox=
|ps=
|other=
}}
{{Flexend}}
</tabber>
1fe9e19b1c7a6440b368a260904de313f1d9f0e8
780
779
2024-03-07T18:48:31Z
Lukkram
396381
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. 2 in Danger Zone, 3 in Race Island, 6 in Treasure Island, 3 in Rally Mode, 4 in Stranded in Space & 4 that are't map dependent. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map. ( Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024. For the percentages of Xbox and Play Station, Feel free to pitch in and update the values where you see a "Fill Me!") *Images for the Achievements were made by lukkram and are made to represent the Steam version of them. This means, that they are not 100% the same as you will find in your Steam Achievements library (or Console Achievements library).
<tabber>
|-|Danger Zone=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= 3-Pointer
|image= SA_23.png
|caption=
|about= Shoot Hoops on Danger Zone
|steam= 6.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= El Capitan
|image= SA_22.png
|caption=
|about= Reach the Top of Danger Zone
|steam= 8.3%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Race Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Best View In Town
|image= SA_10.png
|caption=
|about= Land on the Lighthouse on Race Island
|steam= 3.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Hot Air
|image= SA_09.png
|caption=
|about= Crash into the blimp on Race Island
|steam= 7.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Island Hopper
|image= SA_08.png
|caption=
|about= Land in all the floating Islands above Race Island in one session
|steam= 1.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Treasure Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Man In Black
|image= SA_18.png
|caption=
|about= Fly through all the rings of fire in Treasure Island in one session
|steam= 4.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Moby Dick
|image= SA_12.png
|caption=
|about= Bump into the whales in Treasure Island
|steam= 3.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Monster!
|image= SA_16.png
|caption=
|about= Drive over 8 chickens on Treasure Island in one session
|steam= 10.1%
|xbox=Fill Me!
|ps=Fill Me!
|other= Unlocks "Chicken Dinner Sign"
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Pay your respect
|image= SA_24.png
|caption=
|about= Visit the monument on Treasure Island
|steam= 9.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Problem Solver
|image= SA_19.png
|caption=
|about= Complete all the ball puzzles on Treasure Island
|steam= 2.0%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Treehugger
|image= SA_21.png
|caption=
|about= Hug the Tree on the Northeastern Island on Treasure Island
|steam= 1.6%
|xbox=Fill Me!
|ps=Fill Me!
|other=The tree is in a hole in said island
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Rally Mode=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Gold Rush
|image= SA_05.png
|caption=
|about= Get gold on Downhill Rush
|steam= 6.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Slide to Win
|image= SA_06.png
|caption=
|about= Get gold on Sunny Slide
|steam= 2.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= To Fly or Not To Fly
|image= SA_07.png
|caption=
|about= Get gold on Cliff Land
|steam= 2.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Stranded in Space=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Bring Marshmallows!
|image= SA_03.png
|caption=
|about= Enter the volcano
|steam= 15.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Power Core Collector
|image= SA_04.png
|caption=
|about= Find 15 Power Cores in Stranded in Space
|steam= 20.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Ready For Takeoff
|image= SA_02.png
|caption=
|about= Rebuild your spaceship
|steam= 9.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= So attractive!
|image= SA_01.png
|caption=
|about= Pick up a piece of Salvage
|steam= 35.8%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Car Collector
|image= SA_14.png
|caption=
|about= Download and load in a vehicle from the Workshop
|steam= 51.9%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Leonardo da Vinci
|image= SA_20.png
|caption=
|about= Stay airborne in a zero Power Core vehicle for 60 seconds
|steam= 5.6%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sharing is Caring
|image= SA_13.png
|caption=
|about= Upload a vehicle to the Workshop
|steam= 10.0%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sonic Boom
|image= SA_17.png
|caption=
|about= Break the sound barrier
|steam= 29.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=Unlocks "Boombox"
}}
{{Flexend}}
</tabber>
3f6a8ebd455a8aba9dcbe219cd7d823026f8a87f
781
780
2024-03-07T18:49:16Z
Lukkram
396381
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. 2 in Danger Zone, 3 in Race Island, 6 in Treasure Island, 3 in Rally Mode, 4 in Stranded in Space & 4 that are't map dependent. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map. ( Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024. For the percentages of Xbox and Play Station, Feel free to pitch in and update the values where you see a "Fill Me!") *Images for the Achievements were made by lukkram and are made to represent the Steam version of them. This means, that they are not 100% the same as the ones you will find in your Steam Achievements library (or Console Achievements library).
<tabber>
|-|Danger Zone=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= 3-Pointer
|image= SA_23.png
|caption=
|about= Shoot Hoops on Danger Zone
|steam= 6.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= El Capitan
|image= SA_22.png
|caption=
|about= Reach the Top of Danger Zone
|steam= 8.3%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Race Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Best View In Town
|image= SA_10.png
|caption=
|about= Land on the Lighthouse on Race Island
|steam= 3.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Hot Air
|image= SA_09.png
|caption=
|about= Crash into the blimp on Race Island
|steam= 7.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Island Hopper
|image= SA_08.png
|caption=
|about= Land in all the floating Islands above Race Island in one session
|steam= 1.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Treasure Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Man In Black
|image= SA_18.png
|caption=
|about= Fly through all the rings of fire in Treasure Island in one session
|steam= 4.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Moby Dick
|image= SA_12.png
|caption=
|about= Bump into the whales in Treasure Island
|steam= 3.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Monster!
|image= SA_16.png
|caption=
|about= Drive over 8 chickens on Treasure Island in one session
|steam= 10.1%
|xbox=Fill Me!
|ps=Fill Me!
|other= Unlocks "Chicken Dinner Sign"
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Pay your respect
|image= SA_24.png
|caption=
|about= Visit the monument on Treasure Island
|steam= 9.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Problem Solver
|image= SA_19.png
|caption=
|about= Complete all the ball puzzles on Treasure Island
|steam= 2.0%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Treehugger
|image= SA_21.png
|caption=
|about= Hug the Tree on the Northeastern Island on Treasure Island
|steam= 1.6%
|xbox=Fill Me!
|ps=Fill Me!
|other=The tree is in a hole in said island
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Rally Mode=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Gold Rush
|image= SA_05.png
|caption=
|about= Get gold on Downhill Rush
|steam= 6.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Slide to Win
|image= SA_06.png
|caption=
|about= Get gold on Sunny Slide
|steam= 2.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= To Fly or Not To Fly
|image= SA_07.png
|caption=
|about= Get gold on Cliff Land
|steam= 2.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Stranded in Space=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Bring Marshmallows!
|image= SA_03.png
|caption=
|about= Enter the volcano
|steam= 15.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Power Core Collector
|image= SA_04.png
|caption=
|about= Find 15 Power Cores in Stranded in Space
|steam= 20.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Ready For Takeoff
|image= SA_02.png
|caption=
|about= Rebuild your spaceship
|steam= 9.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= So attractive!
|image= SA_01.png
|caption=
|about= Pick up a piece of Salvage
|steam= 35.8%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Car Collector
|image= SA_14.png
|caption=
|about= Download and load in a vehicle from the Workshop
|steam= 51.9%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Leonardo da Vinci
|image= SA_20.png
|caption=
|about= Stay airborne in a zero Power Core vehicle for 60 seconds
|steam= 5.6%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sharing is Caring
|image= SA_13.png
|caption=
|about= Upload a vehicle to the Workshop
|steam= 10.0%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sonic Boom
|image= SA_17.png
|caption=
|about= Break the sound barrier
|steam= 29.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=Unlocks "Boombox"
}}
{{Flexend}}
</tabber>
e58e935d85c0ded9f679867502da662cab4927cb
782
781
2024-03-07T18:54:19Z
Lukkram
396381
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. 2 in Danger Zone, 3 in Race Island, 6 in Treasure Island, 3 in Rally Mode, 4 in Stranded in Space & 4 that are't map dependent. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map. ( Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024. For the percentages of Xbox and Play Station, Feel free to pitch in and update the values where you see a "Fill Me!" If you are not sure how, visit Help the wiki) *Images for the Achievements were made by lukkram and are made to represent the Steam version of them. This means, that they are not 100% the same as the ones you will find in your Steam Achievements library (or Console Achievements library).
<tabber>
|-|Danger Zone=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= 3-Pointer
|image= SA_23.png
|caption=
|about= Shoot Hoops on Danger Zone
|steam= 6.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= El Capitan
|image= SA_22.png
|caption=
|about= Reach the Top of Danger Zone
|steam= 8.3%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Race Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Best View In Town
|image= SA_10.png
|caption=
|about= Land on the Lighthouse on Race Island
|steam= 3.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Hot Air
|image= SA_09.png
|caption=
|about= Crash into the blimp on Race Island
|steam= 7.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Island Hopper
|image= SA_08.png
|caption=
|about= Land in all the floating Islands above Race Island in one session
|steam= 1.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Treasure Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Man In Black
|image= SA_18.png
|caption=
|about= Fly through all the rings of fire in Treasure Island in one session
|steam= 4.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Moby Dick
|image= SA_12.png
|caption=
|about= Bump into the whales in Treasure Island
|steam= 3.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Monster!
|image= SA_16.png
|caption=
|about= Drive over 8 chickens on Treasure Island in one session
|steam= 10.1%
|xbox=Fill Me!
|ps=Fill Me!
|other= Unlocks "Chicken Dinner Sign"
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Pay your respect
|image= SA_24.png
|caption=
|about= Visit the monument on Treasure Island
|steam= 9.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Problem Solver
|image= SA_19.png
|caption=
|about= Complete all the ball puzzles on Treasure Island
|steam= 2.0%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Treehugger
|image= SA_21.png
|caption=
|about= Hug the Tree on the Northeastern Island on Treasure Island
|steam= 1.6%
|xbox=Fill Me!
|ps=Fill Me!
|other=The tree is in a hole in said island
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Rally Mode=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Gold Rush
|image= SA_05.png
|caption=
|about= Get gold on Downhill Rush
|steam= 6.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Slide to Win
|image= SA_06.png
|caption=
|about= Get gold on Sunny Slide
|steam= 2.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= To Fly or Not To Fly
|image= SA_07.png
|caption=
|about= Get gold on Cliff Land
|steam= 2.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Stranded in Space=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Bring Marshmallows!
|image= SA_03.png
|caption=
|about= Enter the volcano
|steam= 15.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Power Core Collector
|image= SA_04.png
|caption=
|about= Find 15 Power Cores in Stranded in Space
|steam= 20.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Ready For Takeoff
|image= SA_02.png
|caption=
|about= Rebuild your spaceship
|steam= 9.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= So attractive!
|image= SA_01.png
|caption=
|about= Pick up a piece of Salvage
|steam= 35.8%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Car Collector
|image= SA_14.png
|caption=
|about= Download and load in a vehicle from the Workshop
|steam= 51.9%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Leonardo da Vinci
|image= SA_20.png
|caption=
|about= Stay airborne in a zero Power Core vehicle for 60 seconds
|steam= 5.6%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sharing is Caring
|image= SA_13.png
|caption=
|about= Upload a vehicle to the Workshop
|steam= 10.0%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sonic Boom
|image= SA_17.png
|caption=
|about= Break the sound barrier
|steam= 29.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=Unlocks "Boombox"
}}
{{Flexend}}
</tabber>
47808c2784a2a677ff181aeb9a9950d91c334c86
783
782
2024-03-07T18:55:11Z
Lukkram
396381
wikitext
text/x-wiki
==<big>'''Trailmakers Achievements'''</big>==
There are currently 22 Achievements in Trailmakers. 2 in Danger Zone, 3 in Race Island, 6 in Treasure Island, 3 in Rally Mode, 4 in Stranded in Space & 4 that are't map dependent. Here you'll find a list of what they are and how to get them. For ease of use, they are grouped together if they depend on certain conditions. For example: "Race Island" are Achievements you need to complete in the Race Island Map. ( Listed are the percentages of players with the achievement as shown in '''steam''' as of February 2024. For the percentages of Xbox and Play Station, Feel free to pitch in and update the values where you see a "Fill Me!" If you are not sure how, visit [[How to Help]]) *Images for the Achievements were made by lukkram and are made to represent the Steam version of them. This means, that they are not 100% the same as the ones you will find in your Steam Achievements library (or Console Achievements library).
<tabber>
|-|Danger Zone=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= 3-Pointer
|image= SA_23.png
|caption=
|about= Shoot Hoops on Danger Zone
|steam= 6.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= El Capitan
|image= SA_22.png
|caption=
|about= Reach the Top of Danger Zone
|steam= 8.3%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Race Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Best View In Town
|image= SA_10.png
|caption=
|about= Land on the Lighthouse on Race Island
|steam= 3.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Hot Air
|image= SA_09.png
|caption=
|about= Crash into the blimp on Race Island
|steam= 7.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Island Hopper
|image= SA_08.png
|caption=
|about= Land in all the floating Islands above Race Island in one session
|steam= 1.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Treasure Island=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Man In Black
|image= SA_18.png
|caption=
|about= Fly through all the rings of fire in Treasure Island in one session
|steam= 4.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Moby Dick
|image= SA_12.png
|caption=
|about= Bump into the whales in Treasure Island
|steam= 3.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Monster!
|image= SA_16.png
|caption=
|about= Drive over 8 chickens on Treasure Island in one session
|steam= 10.1%
|xbox=Fill Me!
|ps=Fill Me!
|other= Unlocks "Chicken Dinner Sign"
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Pay your respect
|image= SA_24.png
|caption=
|about= Visit the monument on Treasure Island
|steam= 9.5%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Problem Solver
|image= SA_19.png
|caption=
|about= Complete all the ball puzzles on Treasure Island
|steam= 2.0%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Treehugger
|image= SA_21.png
|caption=
|about= Hug the Tree on the Northeastern Island on Treasure Island
|steam= 1.6%
|xbox=Fill Me!
|ps=Fill Me!
|other=The tree is in a hole in said island
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Rally Mode=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Gold Rush
|image= SA_05.png
|caption=
|about= Get gold on Downhill Rush
|steam= 6.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Slide to Win
|image= SA_06.png
|caption=
|about= Get gold on Sunny Slide
|steam= 2.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= To Fly or Not To Fly
|image= SA_07.png
|caption=
|about= Get gold on Cliff Land
|steam= 2.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Stranded in Space=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Bring Marshmallows!
|image= SA_03.png
|caption=
|about= Enter the volcano
|steam= 15.4%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Power Core Collector
|image= SA_04.png
|caption=
|about= Find 15 Power Cores in Stranded in Space
|steam= 20.1%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Ready For Takeoff
|image= SA_02.png
|caption=
|about= Rebuild your spaceship
|steam= 9.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= So attractive!
|image= SA_01.png
|caption=
|about= Pick up a piece of Salvage
|steam= 35.8%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
<br>
{{Flexstart|inline}}
{{PIachievements
|title= Car Collector
|image= SA_14.png
|caption=
|about= Download and load in a vehicle from the Workshop
|steam= 51.9%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Leonardo da Vinci
|image= SA_20.png
|caption=
|about= Stay airborne in a zero Power Core vehicle for 60 seconds
|steam= 5.6%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sharing is Caring
|image= SA_13.png
|caption=
|about= Upload a vehicle to the Workshop
|steam= 10.0%
|xbox=Fill Me!
|ps=Fill Me!
|other=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIachievements
|title= Sonic Boom
|image= SA_17.png
|caption=
|about= Break the sound barrier
|steam= 29.2%
|xbox=Fill Me!
|ps=Fill Me!
|other=Unlocks "Boombox"
}}
{{Flexend}}
</tabber>
fcebe5d01170c9fbb93b04d46c2347186e0b5c87
Trailmakers Wiki
0
45
784
592
2024-03-07T18:58:01Z
Lukkram
396381
wikitext
text/x-wiki
__NOTITLE__ __NOTOC__
<div id="mainpage-wrap"><div class="content-wrap"><!--
--><div class="l"><!--
--><div class="header box"><!--
--><div class="welcome"><!--
--><h2>Welcome to the official '''{{SITENAME}}'''</h2><!--
--><p>the ''Trailmakers'' guide written and maintained by the community.</p><!--
--><p>We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]].</p><!--
--><p>Please feel free to contribute by creating new articles or expanding existing ones.</p><!--
--></div><!--
--></div><!--
--><div class="box game"><!--
--><h2>About Trailmakers</h2><!--
--><div><!--
-->[[File:Keyart.jpg|360px|link=]]<!--
--><div><!--
--><p>[[Trailmakers]] is part creative vehicle-building sandbox, and part open-world rally expedition. You begin your journey in a desolate canyon on a distant planet, and must scavenge for discarded vehicle parts. Your goal is to get as far as you can! Build a rig and experience the sweet rush of freedom that follows the acquisition of motorized transportation.</p><!--
--><p>The world in Trailmakers is an inherently dangerous place. To progress in the expedition you need to continuously adjust your vehicle to overcome obstacles and conquer the environment. Play alone and see how far you can get, or join your friends for a fun co-op quest. In Trailmakers, the adventure is in the making.</p><!--
--></div><!--
--></div><!--
--></div><!--
--><div class="box quicklinks"><!--
--><h2>Quick Links</h2><!--
--><div class="content"><!--
-->{{FP link|Accesories|size=wide}}<!--
-->{{FP link|Artifacts|size=wide}}<!--
-->{{FP link|Blocks|size=wide}}<!--
-->{{FP link|Building Tools|size=wide}}<!--
-->{{FP link|Logic Blocks|size=wide}}<!--
-->{{FP link|Mechanical Blocks|size=wide}}<!--
-->{{FP link|Propulsion Blocks|size=wide}}<!--
-->{{FP link|Salvage|size=wide}}<!--
-->{{FP link|Sound Makers|size=wide}}<!--
-->{{FP link|Weapons|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box guides"><!--
--><h2>Guides & Information</h2><!--
-->
*[[Achievements]]
*[[Blueprints]]
*[[Building]]
*[[DLC]]
*[[Environment]]
*[[Game Modes]]
*[[Logic Circuits]]
*[[Maps]]
*[[Modding]]
*[[Official Competitions]]
*[[Shortcuts & Controls]]
*[[Workshop & Galleries]]
<!--
--></div><!--
--></div><!--
--><div class="r"><!--
--><div class="box links"><!--
--><h2>''Trailmakers'' Links</h2><!--
--><div class="content"><!--
-->{{FP link|url=https://www.playtrailmakers.com/|Official Website|size=wide}}<!--
-->{{FP link|url=https://www.flashbulbgames.com/|Developers|size=wide}}<!--
-->{{FP link|url=https://twitter.com/PlayTrailmakers|Official Twitter|size=wide}}<!--
-->{{FP link|url=https://www.facebook.com/PlayTrailmakers/|Official Facebook|size=wide}}<!--
-->{{FP link|url=https://www.linkedin.com/company/lightbulb-games|Official LinkedIn|size=wide}}<!--
-->{{FP link|url=https://www.discord.gg/Trailmakers|Official Discord|size=wide}}<!--
--></div><!--
--></div><!--
--><div class="box comm"><!--
--><h2>Wiki Community</h2><!--
--><div>
We are currently maintaining [[Special:Statistics|{{NUMBEROFPAGES}} pages ({{NUMBEROFARTICLES}} articles)]]!<br>
<small style="margin-left:2em;">[[Special:Recentchanges|Recent changes]] {{!}} [[Special:Newpages|New pages]] {{!}} [[Special:Wantedpages|Missing pages]]</small>
;[[How to help]]
: See how you can help contribute to {{SITENAME}}! Remember to maintain a standard for grammar and punctuation in your contributions, please.
<inputbox>
type= create
width= 30
placeholder=Title of your article
</inputbox>
;[[Special:Userlogin|Register]]
: Register an account to keep track of your contributions.
</div><!--
--></div><!--
--></div><!--
--></div><!-- .content-wrap -->
<!--<div class="footer note"><div><span>Changes to this main page</span> <span>can be proposed [[{{SITENAME}}/editcopy|here]]</span></div></div>-->
</div><!--#mainpage-wrap-->
{{#description2:The official community maintained wiki resource for Trailmakers!}}
[[category:{{SITENAME}}| ]]
8c9a1ff8798854886096a5966a6ed263ad4d693f
Maps
0
143
787
577
2024-03-08T08:24:47Z
Moto28
432060
wikitext
text/x-wiki
Page for Maps. Information pending
<tabber>
<br>
|-|Stranded=
<!-- {{DataMap:Cipanku Interactive Map|title=Location Map for Cipanku}} -->
|-|Danger Zone=
|-|Treasure Island=
|-|Test Zone=
|-|Space Sector=
|-|Airborne=
|-|High Seas=
</tabber>
7e79a2e67ef9aa2a8fb33bf345b8663d17163f47
788
787
2024-03-08T08:26:12Z
Moto28
432060
wikitext
text/x-wiki
Page for Maps. Information pending
<tabber>
|-|Stranded=
<!-- {{DataMap:Cipanku Interactive Map|title=Location Map for Cipanku}} -->
|-|Danger Zone=
|-|Treasure Island=
|-|Test Zone=
|-|Space Sector=
|-|Airborne=
|-|High Seas=
</tabber>
2a468dc2aae1db8f277cd38a824d8033c43efeb8
Exhaust Accessories
0
206
789
2024-03-08T10:31:21Z
Lukkram
396381
Created page with "exhaust"
wikitext
text/x-wiki
exhaust
1b90d4690a2a9dc1d696d489a4943d381a7bba85
804
789
2024-03-08T12:09:12Z
Lukkram
396381
wikitext
text/x-wiki
<tabber>
|-|Intakes=
Decorative Air Intakes
<br>
{{Flexstart|inline}}
{{PIblock
|title= Sharp Air Intake
|image= SA_01.png
|caption=
|weight= 1.5 kg
|size= 2x2x1
|hp=
|aero= none
|other= Has almost the same angle as the 4x1 wedge (~14 degrees)
|about=Keep your cool.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Air Intake
|image= SA_01.png
|caption=
|weight= 2 kg
|size= 2x2x1
|hp=
|aero= none
|other=
|about=Makes your vehicle... cool.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rounded Air Intake
|image= SA_01.png
|caption=
|weight= 2 kg
|size= 2x2x1
|hp=
|aero= none
|other=
|about=Keep your cool.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Hood Pipes
|image= SA_01.png
|caption=
|weight= 3 kg
|size= 2x2x1
|hp=
|aero= none
|other=
|about=Steaming ahead.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Exhausts=
Decorative Exhausts that emit smoke
<br>
{{Flexstart|inline}}
{{PIblock
|title= 80s Exhaust
|image= SA_01.png
|caption=
|weight= 3.1 kg
|size= 2x2x2
|hp=
|aero= none
|other=
|about= Go back in time.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Exhaust With Muffler
|image= SA_01.png
|caption=
|weight= 0.5 kg
|size= 2x3x1
|hp=
|aero= none
|other=
|about= Let the air out!
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Long Exhaust
|image= SA_01.png
|caption=
|weight= 1 kg
|size= 1x4x1
|hp=
|aero= none
|other=
|about= Let off some steam.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Buggy Exhaust
|image= SA_01.png
|caption=
|weight= 0.5 kg
|size= 1x3x1
|hp=
|aero= none
|other=
|about= Fancy exhaust system with a muffler.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Triple Exhaust
|image= SA_01.png
|caption=
|weight= 0.5 kg
|size= 1x4x2
|hp=
|aero= none
|other=
|about= Three times cooler!
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Emitters=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Smoke Trail Device
|image= SA_01.png
|caption=
|weight= 5 kg
|size= 2x1x4
|hp=
|aero= none
|other= Smoke color is a gradient from yellow to red to purple
|about=Activate to show your colored smoke trail
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Bubble Maker
|image= SA_01.png
|caption=
|weight= 0.5 kg
|size= 2x2x2
|hp=
|aero= none
|other= Selection hitbox is a 1x2x2 square on the front of the block, therefore you can select thing behind it while looking at it from the sides, top and bottom
|about=Watch loads of bubbles pour out.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Mad Science Block
|image= SA_01.png
|caption=
|weight= 5 kg
|size= 2x2x1
|hp=
|aero= none
|other=
|about=Name one genius that ain't crazy!
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rainbow Maker
|image= SA_01.png
|caption=
|weight= 9.6 kg
|size= 2x2x2
|hp=
|aero= none
|other=
|about=Be a rainbow.
}}
{{Flexend}}
</tabber>
8c0b3f06e8cfcfe80d4744d18544e70eddeca37a
805
804
2024-03-08T12:09:55Z
Lukkram
396381
wikitext
text/x-wiki
<tabber>
|-|Intakes=
Decorative Air Intakes
<br>
{{Flexstart|inline}}
{{PIblock
|title= Sharp Air Intake
|image= SA_01.png
|caption=
|weight= 1.5 kg
|size= 2x2x1
|hp=
|aero= none
|other= Has almost the same angle as the 4x1 wedge (~14 degrees)
|about=Keep your cool.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Air Intake
|image= SA_01.png
|caption=
|weight= 2 kg
|size= 2x2x1
|hp=
|aero= none
|other=
|about=Makes your vehicle... cool.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rounded Air Intake
|image= SA_01.png
|caption=
|weight= 2 kg
|size= 2x2x1
|hp=
|aero= none
|other=
|about=Keep your cool.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Hood Pipes
|image= SA_01.png
|caption=
|weight= 3 kg
|size= 2x2x1
|hp=
|aero= none
|other=
|about=Steaming ahead.
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Exhausts=
Decorative Exhausts that emit smoke
<br>
{{Flexstart|inline}}
{{PIblock
|title= 80s Exhaust
|image= SA_01.png
|caption=
|weight= 3.1 kg
|size= 2x2x2
|hp=
|aero= none
|other=
|about= Go back in time.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Exhaust With Muffler
|image= SA_01.png
|caption=
|weight= 0.5 kg
|size= 2x3x1
|hp=
|aero= none
|other=
|about= Let the air out!
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Long Exhaust
|image= SA_01.png
|caption=
|weight= 1 kg
|size= 1x4x1
|hp=
|aero= none
|other=
|about= Let off some steam.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Buggy Exhaust
|image= SA_01.png
|caption=
|weight= 0.5 kg
|size= 1x3x1
|hp=
|aero= none
|other=
|about= Fancy exhaust system with a muffler.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Triple Exhaust
|image= SA_01.png
|caption=
|weight= 0.5 kg
|size= 1x4x2
|hp=
|aero= none
|other=
|about= Three times cooler!
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Emitters=
<br>
{{Flexstart|inline}}
{{PIblock
|title= Smoke Trail Device
|image= SA_01.png
|caption=
|weight= 5 kg
|size= 2x1x4
|hp=
|aero= none
|other= Smoke color is a gradient from yellow to red to purple
|about=Activate to show your colored smoke trail
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Bubble Maker
|image= SA_01.png
|caption=
|weight= 0.5 kg
|size= 2x2x2
|hp=
|aero= none
|other= Selection hitbox is a 1x2x2 square on the front of the block, therefore you can select things behind it while looking at it from the sides, top and bottom
|about=Watch loads of bubbles pour out.
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Mad Science Block
|image= SA_01.png
|caption=
|weight= 5 kg
|size= 2x2x1
|hp=
|aero= none
|other=
|about=Name one genius that ain't crazy!
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Rainbow Maker
|image= SA_01.png
|caption=
|weight= 9.6 kg
|size= 2x2x2
|hp=
|aero= none
|other=
|about=Be a rainbow.
}}
{{Flexend}}
</tabber>
ff8f94fd4b11858dace4a134f631db2ef0b48057
Details Accessories
0
207
790
2024-03-08T10:32:06Z
Lukkram
396381
Created page with "Details"
wikitext
text/x-wiki
Details
dc3decbb93847518f1a049dcf49d0d7c6560bcc6
Lights Accessories
0
208
791
2024-03-08T10:32:37Z
Lukkram
396381
Created page with "Lights"
wikitext
text/x-wiki
Lights
646a059adb5e4d138d69edb2e67f2697d9109f81
Flags Accessories
0
209
792
2024-03-08T10:33:06Z
Lukkram
396381
Created page with "Flags"
wikitext
text/x-wiki
Flags
5d728758adcdd5154d3be55552c1c061ef1489b2
Facial Features Accessories
0
210
793
2024-03-08T10:33:54Z
Lukkram
396381
Created page with "Facial Features"
wikitext
text/x-wiki
Facial Features
27454c2d677c6b84835b1ae30db0a92095e8978a
Bumpers Accessories
0
211
794
2024-03-08T10:34:27Z
Lukkram
396381
Created page with "Bumpers"
wikitext
text/x-wiki
Bumpers
33dfad7b5ce2248cc4bc150bdb221a1a79b9f6be
Rims Accessories
0
212
795
2024-03-08T10:35:01Z
Lukkram
396381
Created page with "Rims"
wikitext
text/x-wiki
Rims
5f1c49376308e61b8e5bce589dd9676b50f3c1f7
Soundmakers Accessories
0
213
796
2024-03-08T10:35:47Z
Lukkram
396381
Created page with "Soundmakers"
wikitext
text/x-wiki
Soundmakers
5eb937f72e6672e266fc4e7bc171547eafdbb41c
Ornaments Accessories
0
214
797
2024-03-08T10:36:11Z
Lukkram
396381
Created page with "Ornaments"
wikitext
text/x-wiki
Ornaments
809ccb2c37265bf3340f19a68d94be214ac28104
Trophies Accessories
0
215
798
2024-03-08T10:36:43Z
Lukkram
396381
Created page with "Trophies"
wikitext
text/x-wiki
Trophies
3a1ef60b8e85c4c19f8fad19e9eac6b3c775dd5a
Accesories
0
152
799
593
2024-03-08T10:41:31Z
Lukkram
396381
wikitext
text/x-wiki
"Cosmetic blocks for decorating your vehicle" Info pending
<group>
* [[ Exhaust Accessories | Exhaust ]]
*
*
*
*
*
*
*
</group>
<tabber>
|-|Exhaust=
"If you really don't care about the environment."
|-|Details=
"The devil is in the details"
|-|Lights=
"Blocks that can illuminate, or just get the party started."
|-|Flags=
"To show which country you are from - like pirate."
|-|Facial Features=
"Build your own head!"
|-|Bumpers=
"For all your Bumping needs"
|-|Rims=
"A wheel is not the same without 'em."
|-|Soundmakers=
"Make some noise y'all!"
|-|Ornaments=
"What really ties the vehicle together."
|-|Trophies=
"Show off your achievements - you've earned it!"
</tabber>
4e97241d40919715863be9a49bbe5648b79af66b
800
799
2024-03-08T10:46:41Z
Lukkram
396381
wikitext
text/x-wiki
"Cosmetic blocks for decorating your vehicle" Info pending
<div>
* [[ Exhaust Accessories | Exhaust ]]
* [[ Details Accessories | Details ]]
* [[ Lights Accessories | Lights ]]
* [[ Flags Accessories | Flags ]]
* [[ Facial Features Accessories | Facial Features ]]
* [[ Bumpers Accessories | Bumpers ]]
* [[ Rims Accessories | Rims ]]
* [[ Soundmakers Accessories | Soundmakers ]]
* [[ Ornaments Accessories | Ornaments ]]
* [[ Trophies Accessories | Trophies ]]
</div>
<tabber>
|-|Exhaust=
"If you really don't care about the environment."
|-|Details=
"The devil is in the details"
|-|Lights=
"Blocks that can illuminate, or just get the party started."
|-|Flags=
"To show which country you are from - like pirate."
|-|Facial Features=
"Build your own head!"
|-|Bumpers=
"For all your Bumping needs"
|-|Rims=
"A wheel is not the same without 'em."
|-|Soundmakers=
"Make some noise y'all!"
|-|Ornaments=
"What really ties the vehicle together."
|-|Trophies=
"Show off your achievements - you've earned it!"
</tabber>
38535ac2691f12a9a6984326c9802da005b001aa
801
800
2024-03-08T10:49:29Z
Lukkram
396381
wikitext
text/x-wiki
"Cosmetic blocks for decorating your vehicle" Info pending
{{Flexstart|inline}}
* [[ Exhaust Accessories | Exhaust ]]
* [[ Details Accessories | Details ]]
* [[ Lights Accessories | Lights ]]
* [[ Flags Accessories | Flags ]]
* [[ Facial Features Accessories | Facial Features ]]
{{Flexend}}
{{Flexstart|inline}}
* [[ Bumpers Accessories | Bumpers ]]
* [[ Rims Accessories | Rims ]]
* [[ Soundmakers Accessories | Soundmakers ]]
* [[ Ornaments Accessories | Ornaments ]]
* [[ Trophies Accessories | Trophies ]]
{{Flexend}}
0f6ae3b464feefbc0e0adf27fa9f7e497ca0d35c
Template:Flexbox
10
88
802
611
2024-03-08T10:50:42Z
Lukkram
396381
wikitext
text/x-wiki
<includeonly>
{{flexstart|{{#if:{{{inline|}}}|inline}}<!--
-->|wrap={{{wrap|}}}<!--
-->|direction={{{direction|}}}<!--
-->|justify={{{justify|}}}<!--
-->|alignitems={{{alignitems|}}}<!--
-->|alignlines={{{alignlines|}}}<!--
-->|width={{{width|}}}<!--
-->|height={{{height|}}}<!--
-->|css={{{css|{{{style|}}}}}}<!--
-->|cssclass={{{cssclass|{{{class|}}}}}}<!--
-->|id={{{id|}}}<!--
-->}}<!--
-->{{#fornumargs:_|v|{{#var:v}}}}<!--
-->{{flexend}}
</includeonly>
<noinclude>
{{doc}}
</noinclude>
cca59a64690d92afcb303a83027b361707409490
Frame Blocks
0
19
803
739
2024-03-08T11:09:59Z
Lukkram
396381
wikitext
text/x-wiki
== Overview ==
"Blocks for building the frame of your vehicle."
Frame pieces are the basic building blocks and allow you to create the framework for your creations. There are four main categories: Blocks, Grid Blocks, Flat Connectors, and Shields.
<tabber>
|-|Blocks=
'''"Basic Building Blocks" - The most basic piece used for building creations. Has studs on all sides'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Block 1x2
|image= SA_01.png
|caption=
|weight= 0.6kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 1x3
|image= SA_01.png
|caption=
|weight= 0.9kg
|size= 1x3x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 1x4
|image= SA_01.png
|caption=
|weight= 1.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 2x4
|image= SA_01.png
|caption=
|weight= 2.5kg
|size= 2x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 2x2x2
|image= SA_01.png
|caption=
|weight= 2.5kg
|size= 2x2x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Block 4x8
|image= SA_01.png
|caption=
|weight= 10kg
|size= 4x8x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Grid Blocks=
'''"A metal pole for crafting Grids," The blocks are surprisingly light for being metal. From light testing, appears to be similar durability to normal blocks.'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Grid Block 1x2
|image= SA_01.png
|caption=
|weight= 0.3kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Grid Block 1x4
|image= SA_01.png
|caption=
|weight= 0.6kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Connectors=
'''"Flat connection bar" - A lanky piece with only two studs on one side of the connector. Useful when trying to limit connections between blocks, i.e., when turning or other mechanical parts.'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Flat Connector 1x2
|image= SA_01.png
|caption=
|weight= 0.1kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Flat Connector 1x3
|image= SA_01.png
|caption=
|weight= 0.2kg
|size= 1x3x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Flat Connector 1x4
|image= SA_01.png
|caption=
|weight= 0.2kg
|size= 1x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Shield=
'''"Armor for your vehicle" - Used as defense against projectiles launched from the cannons, Also useful for covering up studs on blocks for a sleeker look.'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Shield 2x1
|image= SA_01.png
|caption=
|weight= 0.6kg
|size= 2x1x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Shield 2x2
|image= SA_01.png
|caption=
|weight= 1.2kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Shield 2x4
|image= SA_01.png
|caption=
|weight= 2.5kg
|size= 2x4x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
|-|Others=
'''The Frame section also includes the following blocks: Small Porthole, Large Porthole, Airplane Window, and Mast (High Seas DLC).'''
<br>
{{Flexstart|inline}}
{{PIblock
|title= Small Porthole
|image= SA_01.png
|caption=
|weight= 1.2kg
|size= 1x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Large Porthole
|image= SA_01.png
|caption=
|weight= 5kg
|size= 4x4x3
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Airplane Window
|image= SA_01.png
|caption=
|weight= 1.1kg
|size= 2x2x1
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
{{Flexstart|inline}}
{{PIblock
|title= Mast
|image= SA_01.png
|caption=
|weight= 5kg
|size= 2x8x2
|hp=
|aero=
|other=
|about=
}}
{{Flexend}}
<!-- ==================================================================================================================================== -->
</tabber>
d3efb70600e4658484e1ca7ce386815749ec23f0
Modding
0
144
806
578
2024-03-27T12:24:45Z
Frans fbg
439888
Basic draft of Modding index page
wikitext
text/x-wiki
== Introduction ==
Trailmakers support modding through [https://www.lua.org/ Lua scripting language]. There is a full modding API, that can access and modify various properties in the game. It is supported for both multiplayer and singleplayer.
Modding functions are still growing between every release and is in active development. You can visit the [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding] to discuss and request new features, where you can also talk and get help from community members who does modding.
Modding is not support on consoles, and only on Steam version of the game. There are currently no plans to get modding support to other platforms.
== Using Mods ==
Only the person hosting the multiplayer server can select which mods are active. You can also use mods in singleplayer sessions.
# Download any of the many mods from the [https://steamcommunity.com/workshop/browse/?appid=585420&requiredtags%5B%5D=Mods Steam Workshop], you can also download them directly from the game in the Workshop menu.
# Start the game and a new session, we recommend Sandbox + Test Zone for trying out new mods.
# After getting into the game, press Escape to bring up the In-Game Menu and then click on Session Options.
# Now click Activate Mods and enable the mod(s) you downloaded.
Note: Custom Maps still requires you to load a (any) map, the custom map is loaded on top of the existing map.
== Creating Mods ==
[[Draft: Basic Modding Guide]]
== Disclaimer ==
DLL modding goes against our [https://playtrailmakers.com/xboxtos/ Terms of Service], promoting it on the [https://discord.gg/trailmakers official Discord server] will result in a temporary ban at first which will become a permanent ban for serial offenders.
00d0eeb1c90cf5729ae8ede4d36397e4fbd27b4a
807
806
2024-03-27T12:49:12Z
Frans fbg
439888
wikitext
text/x-wiki
== Introduction ==
Trailmakers support modding through [https://www.lua.org/ Lua scripting language]. There is a full modding API, that can access and modify various properties in the game. It is supported for both multiplayer and singleplayer.
Modding functions are still growing between every release and is in active development. You can visit the [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding] to discuss and request new features, where you can also talk and get help from community members who does modding.
Modding is not support on consoles, and only on Steam version of the game. There are currently no plans to get modding support to other platforms.
== Using Mods ==
Only the person hosting the multiplayer server can select which mods are active. You can also use mods in singleplayer sessions.
# Download any of the many mods from the [https://steamcommunity.com/workshop/browse/?appid=585420&requiredtags%5B%5D=Mods Steam Workshop], you can also download them directly from the game in the Workshop menu.
# Start the game and a new session, we recommend Sandbox + Test Zone for trying out new mods.
# After getting into the game, press Escape to bring up the In-Game Menu and then click on Session Options.
# Now click Activate Mods and enable the mod(s) you downloaded.
Note: Custom Maps still requires you to load a (any) map, the custom map is loaded on top of the existing map.
== Creating Mods ==
Creating mods for Trailmakers requires understanding of general programming. There are various ways to approach this, but this will not be covered here.
Brief tips for getting started:
* Check out other existing mods, the mods you download from Workshop you can read and modify as you wish.
* Check the [https://www.lua.org/start.html Lua - Getting Started page]
* Check the Trailmakers Moddding API file inside the <source enclose="none">trailmakers/mods/trailmakers_docs.lua</source>.
* Ask on [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding]
[[Basic Modding Guide]]
== Disclaimer ==
DLL modding goes against our [https://playtrailmakers.com/xboxtos/ Terms of Service], promoting it on the [https://discord.gg/trailmakers official Discord server] will result in a temporary ban at first which will become a permanent ban for serial offenders.
ec943548d3b8a7aacc7ed5d1eb419b481e470e56
808
807
2024-03-27T12:51:29Z
Frans fbg
439888
wikitext
text/x-wiki
== Introduction ==
Trailmakers support modding through [https://www.lua.org/ Lua scripting language]. There is a full modding API, that can access and modify various properties in the game. It is supported for both multiplayer and singleplayer.
Modding functions are still growing between every release and is in active development. You can visit the [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding] to discuss and request new features, where you can also talk and get help from community members who does modding.
Modding is not support on consoles, and only on Steam version of the game. There are currently no plans to get modding support to other platforms.
== Using Mods ==
Only the person hosting the multiplayer server can select which mods are active. You can also use mods in singleplayer sessions.
# Download any of the many mods from the [https://steamcommunity.com/workshop/browse/?appid=585420&requiredtags%5B%5D=Mods Steam Workshop], you can also download them directly from the game in the Workshop menu.
# Start the game and a new session, we recommend Sandbox + Test Zone for trying out new mods.
# After getting into the game, press Escape to bring up the In-Game Menu and then click on Session Options.
# Now click Activate Mods and enable the mod(s) you downloaded.
Note: Custom Maps still requires you to load a (any) map, the custom map is loaded on top of the existing map.
== Creating Mods ==
Creating mods for Trailmakers requires understanding of general programming. There are various ways to approach this, but this will not be covered here.
Brief tips for getting started:
* Check out other existing mods, the mods you download from Workshop you can read and modify as you wish.
* Check the [https://www.lua.org/start.html Lua - Getting Started page]
* Check the Trailmakers Moddding API file inside the <code>trailmakers/mods/trailmakers_docs.lua</code>.
* Ask on [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding]
[[Basic Modding Guide]]
== Disclaimer ==
DLL modding goes against our [https://playtrailmakers.com/xboxtos/ Terms of Service], promoting it on the [https://discord.gg/trailmakers official Discord server] will result in a temporary ban at first which will become a permanent ban for serial offenders.
6d9a5cb52374dec3c21a4ff62bfd159f47b1650e
809
808
2024-03-27T13:21:30Z
Frans fbg
439888
/* Using Mods */
wikitext
text/x-wiki
== Introduction ==
Trailmakers support modding through [https://www.lua.org/ Lua scripting language]. There is a full modding API, that can access and modify various properties in the game. It is supported for both multiplayer and singleplayer.
Modding functions are still growing between every release and is in active development. You can visit the [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding] to discuss and request new features, where you can also talk and get help from community members who does modding.
Modding is not support on consoles, and only on Steam version of the game. There are currently no plans to get modding support to other platforms.
== Installing and using Mods ==
Only the person hosting the multiplayer server can select which mods are active. You can also use mods in singleplayer sessions.
# Download any of the many mods from the [https://steamcommunity.com/workshop/browse/?appid=585420&requiredtags%5B%5D=Mods Steam Workshop], you can also download them directly from the game in the Workshop menu.
# Start the game and a new session, we recommend Sandbox + Test Zone for trying out new mods.
# After getting into the game, press Escape to bring up the In-Game Menu and then click on Session Options.
# Now click Activate Mods and enable the mod(s) you downloaded.
Note: Custom Maps still requires you to load a (any) map, the custom map is loaded on top of the existing map.
== Creating Mods ==
Creating mods for Trailmakers requires understanding of general programming. There are various ways to approach this, but this will not be covered here.
Brief tips for getting started:
* Check out other existing mods, the mods you download from Workshop you can read and modify as you wish.
* Check the [https://www.lua.org/start.html Lua - Getting Started page]
* Check the Trailmakers Moddding API file inside the <code>trailmakers/mods/trailmakers_docs.lua</code>.
* Ask on [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding]
[[Basic Modding Guide]]
== Disclaimer ==
DLL modding goes against our [https://playtrailmakers.com/xboxtos/ Terms of Service], promoting it on the [https://discord.gg/trailmakers official Discord server] will result in a temporary ban at first which will become a permanent ban for serial offenders.
c898956851ea49beee1581053c6a5db400714ae9
810
809
2024-03-27T13:24:17Z
Frans fbg
439888
/* Installing and using Mods */
wikitext
text/x-wiki
== Introduction ==
Trailmakers support modding through [https://www.lua.org/ Lua scripting language]. There is a full modding API, that can access and modify various properties in the game. It is supported for both multiplayer and singleplayer.
Modding functions are still growing between every release and is in active development. You can visit the [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding] to discuss and request new features, where you can also talk and get help from community members who does modding.
Modding is not support on consoles, and only on Steam version of the game. There are currently no plans to get modding support to other platforms.
== Installing and using Mods ==
Only the person hosting the multiplayer server can select which mods are active. You can also use mods in singleplayer sessions.
# Download any of the many mods from the [https://steamcommunity.com/workshop/browse/?appid=585420&requiredtags%5B%5D=Mods Steam Workshop], you can also download them directly from the game in the Workshop menu.
# Start the game and a new session, we recommend Sandbox + Test Zone for trying out new mods.
# After getting into the game, press Escape to bring up the In-Game Menu and then click on Session Options.
# Now click Activate Mods and enable the mod(s) you downloaded.
Note:
Custom Maps still requires you to load a (any) map, the custom map is loaded on top of the existing map.
Mods downloaded through Steam Workshop will be installed in your Steam workshop content folder for Trailmakers (Ex. <code>C:\Program Files (x86)\Steam\steamapps\workshop\content\585420\<mod></code>)
You can also manually install mods by placing them in your <code>trailmakers/mods/<mod></code> folder.
== Creating Mods ==
Creating mods for Trailmakers requires understanding of general programming. There are various ways to approach this, but this will not be covered here.
Brief tips for getting started:
* Check out other existing mods, the mods you download from Workshop you can read and modify as you wish.
* Check the [https://www.lua.org/start.html Lua - Getting Started page]
* Check the Trailmakers Moddding API file inside the <code>trailmakers/mods/trailmakers_docs.lua</code>.
* Ask on [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding]
[[Basic Modding Guide]]
== Disclaimer ==
DLL modding goes against our [https://playtrailmakers.com/xboxtos/ Terms of Service], promoting it on the [https://discord.gg/trailmakers official Discord server] will result in a temporary ban at first which will become a permanent ban for serial offenders.
01f75914e75aabf58c276e70a01a73bbe690ba31
811
810
2024-03-27T13:24:41Z
Frans fbg
439888
/* Installing and using Mods */
wikitext
text/x-wiki
== Introduction ==
Trailmakers support modding through [https://www.lua.org/ Lua scripting language]. There is a full modding API, that can access and modify various properties in the game. It is supported for both multiplayer and singleplayer.
Modding functions are still growing between every release and is in active development. You can visit the [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding] to discuss and request new features, where you can also talk and get help from community members who does modding.
Modding is not support on consoles, and only on Steam version of the game. There are currently no plans to get modding support to other platforms.
== Installing and using Mods ==
Only the person hosting the multiplayer server can select which mods are active. You can also use mods in singleplayer sessions.
# Download any of the many mods from the [https://steamcommunity.com/workshop/browse/?appid=585420&requiredtags%5B%5D=Mods Steam Workshop], you can also download them directly from the game in the Workshop menu.
# Start the game and a new session, we recommend Sandbox + Test Zone for trying out new mods.
# After getting into the game, press Escape to bring up the In-Game Menu and then click on Session Options.
# Now click Activate Mods and enable the mod(s) you downloaded.
'''Note''': Custom Maps still requires you to load a (any) map, the custom map is loaded on top of the existing map.
Mods downloaded through Steam Workshop will be installed in your Steam workshop content folder for Trailmakers (Ex. <code>C:\Program Files (x86)\Steam\steamapps\workshop\content\585420\<mod></code>)
You can also manually install mods by placing them in your <code>trailmakers/mods/<mod></code> folder.
== Creating Mods ==
Creating mods for Trailmakers requires understanding of general programming. There are various ways to approach this, but this will not be covered here.
Brief tips for getting started:
* Check out other existing mods, the mods you download from Workshop you can read and modify as you wish.
* Check the [https://www.lua.org/start.html Lua - Getting Started page]
* Check the Trailmakers Moddding API file inside the <code>trailmakers/mods/trailmakers_docs.lua</code>.
* Ask on [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding]
[[Basic Modding Guide]]
== Disclaimer ==
DLL modding goes against our [https://playtrailmakers.com/xboxtos/ Terms of Service], promoting it on the [https://discord.gg/trailmakers official Discord server] will result in a temporary ban at first which will become a permanent ban for serial offenders.
90fceaf6b5f306e12484958c28b8e6939d51cc08
816
811
2024-03-27T15:21:04Z
Frans fbg
439888
/* Creating Mods */
wikitext
text/x-wiki
== Introduction ==
Trailmakers support modding through [https://www.lua.org/ Lua scripting language]. There is a full modding API, that can access and modify various properties in the game. It is supported for both multiplayer and singleplayer.
Modding functions are still growing between every release and is in active development. You can visit the [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding] to discuss and request new features, where you can also talk and get help from community members who does modding.
Modding is not support on consoles, and only on Steam version of the game. There are currently no plans to get modding support to other platforms.
== Installing and using Mods ==
Only the person hosting the multiplayer server can select which mods are active. You can also use mods in singleplayer sessions.
# Download any of the many mods from the [https://steamcommunity.com/workshop/browse/?appid=585420&requiredtags%5B%5D=Mods Steam Workshop], you can also download them directly from the game in the Workshop menu.
# Start the game and a new session, we recommend Sandbox + Test Zone for trying out new mods.
# After getting into the game, press Escape to bring up the In-Game Menu and then click on Session Options.
# Now click Activate Mods and enable the mod(s) you downloaded.
'''Note''': Custom Maps still requires you to load a (any) map, the custom map is loaded on top of the existing map.
Mods downloaded through Steam Workshop will be installed in your Steam workshop content folder for Trailmakers (Ex. <code>C:\Program Files (x86)\Steam\steamapps\workshop\content\585420\<mod></code>)
You can also manually install mods by placing them in your <code>trailmakers/mods/<mod></code> folder.
== Creating Mods ==
Creating mods for Trailmakers requires understanding of general programming. There are various ways to approach this, but this will not be covered here.
Brief tips for getting started:
* Check out other existing mods, the mods you download from Workshop you can read and modify as you wish.
* Check the [https://www.lua.org/start.html Lua - Getting Started page]
* Check the Trailmakers Moddding API file inside the <code>trailmakers/mods/trailmakers_docs.lua</code>.
* Ask on [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding]
More comprehensive guide and API reference can be found here
[[Basic Modding Guide]]
== Disclaimer ==
DLL modding goes against our [https://playtrailmakers.com/xboxtos/ Terms of Service], promoting it on the [https://discord.gg/trailmakers official Discord server] will result in a temporary ban at first which will become a permanent ban for serial offenders.
b782fbe7f128a1b7481b513fc251264d8dcef191
817
816
2024-03-27T15:21:13Z
Frans fbg
439888
/* Creating Mods */
wikitext
text/x-wiki
== Introduction ==
Trailmakers support modding through [https://www.lua.org/ Lua scripting language]. There is a full modding API, that can access and modify various properties in the game. It is supported for both multiplayer and singleplayer.
Modding functions are still growing between every release and is in active development. You can visit the [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding] to discuss and request new features, where you can also talk and get help from community members who does modding.
Modding is not support on consoles, and only on Steam version of the game. There are currently no plans to get modding support to other platforms.
== Installing and using Mods ==
Only the person hosting the multiplayer server can select which mods are active. You can also use mods in singleplayer sessions.
# Download any of the many mods from the [https://steamcommunity.com/workshop/browse/?appid=585420&requiredtags%5B%5D=Mods Steam Workshop], you can also download them directly from the game in the Workshop menu.
# Start the game and a new session, we recommend Sandbox + Test Zone for trying out new mods.
# After getting into the game, press Escape to bring up the In-Game Menu and then click on Session Options.
# Now click Activate Mods and enable the mod(s) you downloaded.
'''Note''': Custom Maps still requires you to load a (any) map, the custom map is loaded on top of the existing map.
Mods downloaded through Steam Workshop will be installed in your Steam workshop content folder for Trailmakers (Ex. <code>C:\Program Files (x86)\Steam\steamapps\workshop\content\585420\<mod></code>)
You can also manually install mods by placing them in your <code>trailmakers/mods/<mod></code> folder.
== Creating Mods ==
Creating mods for Trailmakers requires understanding of general programming. There are various ways to approach this, but this will not be covered here.
Brief tips for getting started:
* Check out other existing mods, the mods you download from Workshop you can read and modify as you wish.
* Check the [https://www.lua.org/start.html Lua - Getting Started page]
* Check the Trailmakers Moddding API file inside the <code>trailmakers/mods/trailmakers_docs.lua</code>.
* Ask on [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding]
More comprehensive guide and API reference can be found here
[[Basic Modding Guide]]
== Disclaimer ==
DLL modding goes against our [https://playtrailmakers.com/xboxtos/ Terms of Service], promoting it on the [https://discord.gg/trailmakers official Discord server] will result in a temporary ban at first which will become a permanent ban for serial offenders.
3c4d3a5337b3399a36d4eb905c625022e3fa88ad
833
817
2024-03-27T17:29:39Z
Frans fbg
439888
wikitext
text/x-wiki
[[category:Modding]]
== Introduction ==
Trailmakers support modding through [https://www.lua.org/ Lua scripting language]. There is a full modding API, that can access and modify various properties in the game. It is supported for both multiplayer and singleplayer.
Modding functions are still growing between every release and is in active development. You can visit the [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding] to discuss and request new features, where you can also talk and get help from community members who does modding.
Modding is not support on consoles, and only on Steam version of the game. There are currently no plans to get modding support to other platforms.
== Installing and using Mods ==
Only the person hosting the multiplayer server can select which mods are active. You can also use mods in singleplayer sessions.
# Download any of the many mods from the [https://steamcommunity.com/workshop/browse/?appid=585420&requiredtags%5B%5D=Mods Steam Workshop], you can also download them directly from the game in the Workshop menu.
# Start the game and a new session, we recommend Sandbox + Test Zone for trying out new mods.
# After getting into the game, press Escape to bring up the In-Game Menu and then click on Session Options.
# Now click Activate Mods and enable the mod(s) you downloaded.
'''Note''': Custom Maps still requires you to load a (any) map, the custom map is loaded on top of the existing map.
Mods downloaded through Steam Workshop will be installed in your Steam workshop content folder for Trailmakers (Ex. <code>C:\Program Files (x86)\Steam\steamapps\workshop\content\585420\<mod></code>)
You can also manually install mods by placing them in your <code>trailmakers/mods/<mod></code> folder.
== Creating Mods ==
Creating mods for Trailmakers requires understanding of general programming. There are various ways to approach this, but this will not be covered here.
Brief tips for getting started:
* Check out other existing mods, the mods you download from Workshop you can read and modify as you wish.
* Check the [https://www.lua.org/start.html Lua - Getting Started page]
* Check the Trailmakers Moddding API file inside the <code>trailmakers/mods/trailmakers_docs.lua</code>.
* Ask on [https://discord.com/channels/296562030624899072/1140936220487192587 official Discord Forum for modding]
More comprehensive guide and API reference can be found here
[[Basic Modding Guide]]
== Disclaimer ==
DLL modding goes against our [https://playtrailmakers.com/xboxtos/ Terms of Service], promoting it on the [https://discord.gg/trailmakers official Discord server] will result in a temporary ban at first which will become a permanent ban for serial offenders.
c8fda4f3f55c1f2a989f05e8bbddcf33eb3fef68
Basic Modding Guide
0
216
812
2024-03-27T13:48:56Z
Frans fbg
439888
Created page with "== Setup tooling == You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding. # Download, install and open Visual Studio Code # Go to File -> Preferences -> Extensions # Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua) # Go to File -> Preferences -> Settings # Search for w..."
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Creating Custom Maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
fdf75f24523d5556ed3aab1cd04df33592fcd9ce
813
812
2024-03-27T13:49:47Z
Frans fbg
439888
/* Your first mod: Hello World! */
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Creating Custom Maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
663ac6749cbb7c57d8675f209a0b60bb6be17f71
814
813
2024-03-27T15:19:21Z
Frans fbg
439888
/* Your first mod: Hello World! */
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code<C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Creating Custom Maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
d4056961e34b07d7a566ab47c3a4b82f83d435f5
815
814
2024-03-27T15:19:38Z
Frans fbg
439888
/* Your first mod: Hello World! */
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Creating Custom Maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
3ffe5834d5ef080331b4beaeb86bef2f77e26111
818
815
2024-03-27T15:34:21Z
Frans fbg
439888
wikitext
text/x-wiki
{{Header|Modding}}
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Creating custom maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
ee5f6cf154cfff9b375ebd4196f45b70cf49e412
819
818
2024-03-27T15:37:02Z
Frans fbg
439888
Resources for every modding area (unfinished)
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Creating custom maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Resources ==
* [[Modding:Game Loop and Tick]]
* [[Modding:ModGameObject]]
* [[Modding:ModTransform]]
* [[Modding:ModQuaternion]]
* [[Modding:ModVector3]]
* [[Modding:ModStructure]]
* [[Modding:ModBlock]]
* [[Modding:PlayerUI]]
* [[Modding:Physics]]
* [[Modding:Audio]]
* [[Modding:Files]]
* [[Modding:Spawnables]]
* [[Modding:Input]]
* [[Modding:Custom Assets]]
15f980f20ea08933aeee556942d0456ceb8df056
820
819
2024-03-27T15:37:27Z
Frans fbg
439888
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Creating custom maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
557cf5fd37127b09fe8ac6959c45a0acc98702f3
821
820
2024-03-27T15:38:14Z
Frans fbg
439888
wikitext
text/x-wiki
== Resources ==
* [[Modding:Game Loop and Tick]]
* [[Modding:ModGameObject]]
* [[Modding:ModTransform]]
* [[Modding:ModQuaternion]]
* [[Modding:ModVector3]]
* [[Modding:ModStructure]]
* [[Modding:ModBlock]]
* [[Modding:PlayerUI]]
* [[Modding:Physics]]
* [[Modding:Audio]]
* [[Modding:Files]]
* [[Modding:Spawnables]]
* [[Modding:Input]]
* [[Modding:Custom Assets]]
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Creating custom maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
9e956b419d0d93063be45132f6afbaf7b056ec4f
822
821
2024-03-27T15:57:49Z
Frans fbg
439888
Moved the resource list back as it took a little too much space up top.
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Creating custom maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Resources ==
* [[Modding:Game Loop and Tick]]
* [[Modding:ModGameObject]]
* [[Modding:ModTransform]]
* [[Modding:ModQuaternion]]
* [[Modding:ModVector3]]
* [[Modding:ModStructure]]
* [[Modding:ModBlock]]
* [[Modding:PlayerUI]]
* [[Modding:Physics]]
* [[Modding:Audio]]
* [[Modding:Files]]
* [[Modding:Spawnables]]
* [[Modding:Input]]
* [[Modding:Custom Assets]]
15f980f20ea08933aeee556942d0456ceb8df056
823
822
2024-03-27T16:02:54Z
Frans fbg
439888
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Creating custom maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Practically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Topics ==
* [[Modding:Game Loop and Tick]]
* [[Modding:ModGameObject]]
* [[Modding:ModTransform]]
* [[Modding:ModQuaternion]]
* [[Modding:ModVector3]]
* [[Modding:ModStructure]]
* [[Modding:ModBlock]]
* [[Modding:PlayerUI]]
* [[Modding:Physics]]
* [[Modding:Audio]]
* [[Modding:Files]]
* [[Modding:Spawnables]]
* [[Modding:Input]]
* [[Modding:Custom Assets]]
b560b9e2bbc50d7efd7472a96a6bf281d0d383e2
824
823
2024-03-27T16:03:44Z
Frans fbg
439888
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Practically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[Modding:Game Loop and Tick]]
* [[Modding:ModGameObject]]
* [[Modding:ModTransform]]
* [[Modding:ModQuaternion]]
* [[Modding:ModVector3]]
* [[Modding:ModStructure]]
* [[Modding:ModBlock]]
* [[Modding:PlayerUI]]
* [[Modding:Physics]]
* [[Modding:Audio]]
* [[Modding:Files]]
* [[Modding:Spawnables]]
* [[Modding:Input]]
* [[Modding:Custom Assets]]
a8ef09982ab0d220c3eb90fb404dfd39360814fa
825
824
2024-03-27T16:07:45Z
Frans fbg
439888
/* Maps */
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by TerorSoul which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[Modding:Game Loop and Tick]]
* [[Modding:ModGameObject]]
* [[Modding:ModTransform]]
* [[Modding:ModQuaternion]]
* [[Modding:ModVector3]]
* [[Modding:ModStructure]]
* [[Modding:ModBlock]]
* [[Modding:PlayerUI]]
* [[Modding:Physics]]
* [[Modding:Audio]]
* [[Modding:Files]]
* [[Modding:Spawnables]]
* [[Modding:Input]]
* [[Modding:Custom Assets]]
a407d038d3abdbccbe30e9d1fc7030b3304f1b79
828
825
2024-03-27T17:20:24Z
Frans fbg
439888
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[Player:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[Modding:Game Loop and Tick]]
* [[Modding:ModGameObject]]
* [[Modding:ModTransform]]
* [[Modding:ModQuaternion]]
* [[Modding:ModVector3]]
* [[Modding:ModStructure]]
* [[Modding:ModBlock]]
* [[Modding:PlayerUI]]
* [[Modding:Physics]]
* [[Modding:Audio]]
* [[Modding:Files]]
* [[Modding:Spawnables]]
* [[Modding:Input]]
* [[Modding:Custom Assets]]
eb142857c6b4c78220a4f95d4ad0d4b976437dfe
829
828
2024-03-27T17:23:53Z
Frans fbg
439888
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[Player:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[:Modding:Game Loop and Tick]]
* [[:Modding:ModGameObject]]
* [[:Modding:ModTransform]]
* [[:Modding:ModQuaternion]]
* [[:Modding:ModVector3]]
* [[:Modding:ModStructure]]
* [[:Modding:ModBlock]]
* [[:Modding:PlayerUI]]
* [[:Modding:Physics]]
* [[:Modding:Audio]]
* [[:Modding:Files]]
* [[:Modding:Spawnables]]
* [[:Modding:Input]]
* [[:Modding:Custom Assets]]
4435f35f5162a204515edf5c4e267dd9b08b8ba3
830
829
2024-03-27T17:24:20Z
Frans fbg
439888
/* Creating custom maps */
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[:Player:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[:Modding:Game Loop and Tick]]
* [[:Modding:ModGameObject]]
* [[:Modding:ModTransform]]
* [[:Modding:ModQuaternion]]
* [[:Modding:ModVector3]]
* [[:Modding:ModStructure]]
* [[:Modding:ModBlock]]
* [[:Modding:PlayerUI]]
* [[:Modding:Physics]]
* [[:Modding:Audio]]
* [[:Modding:Files]]
* [[:Modding:Spawnables]]
* [[:Modding:Input]]
* [[:Modding:Custom Assets]]
1324ce435544cd3f783d221bc3416081c9306762
831
830
2024-03-27T17:25:46Z
Frans fbg
439888
/* Topics */
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[:Player:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[:Category:Modding|Modding Topics]]
* [[:Modding:Game Loop and Tick]]
* [[:Modding:ModGameObject]]
* [[:Modding:ModTransform]]
* [[:Modding:ModQuaternion]]
* [[:Modding:ModVector3]]
* [[:Modding:ModStructure]]
* [[:Modding:ModBlock]]
* [[:Modding:PlayerUI]]
* [[:Modding:Physics]]
* [[:Modding:Audio]]
* [[:Modding:Files]]
* [[:Modding:Spawnables]]
* [[:Modding:Input]]
* [[:Modding:Custom Assets]]
e89f86f08d7b79bbca3c6bd2a7e0ef7c40a396b2
832
831
2024-03-27T17:26:05Z
Frans fbg
439888
/* Topics */
wikitext
text/x-wiki
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[:Player:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[:Modding:Game Loop and Tick]]
* [[:Modding:ModGameObject]]
* [[:Modding:ModTransform]]
* [[:Modding:ModQuaternion]]
* [[:Modding:ModVector3]]
* [[:Modding:ModStructure]]
* [[:Modding:ModBlock]]
* [[:Modding:PlayerUI]]
* [[:Modding:Physics]]
* [[:Modding:Audio]]
* [[:Modding:Files]]
* [[:Modding:Spawnables]]
* [[:Modding:Input]]
* [[:Modding:Custom Assets]]
1324ce435544cd3f783d221bc3416081c9306762
834
832
2024-03-27T17:29:52Z
Frans fbg
439888
wikitext
text/x-wiki
[[category:Modding]]
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[:Player:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[:Modding:Game Loop and Tick]]
* [[:Modding:ModGameObject]]
* [[:Modding:ModTransform]]
* [[:Modding:ModQuaternion]]
* [[:Modding:ModVector3]]
* [[:Modding:ModStructure]]
* [[:Modding:ModBlock]]
* [[:Modding:PlayerUI]]
* [[:Modding:Physics]]
* [[:Modding:Audio]]
* [[:Modding:Files]]
* [[:Modding:Spawnables]]
* [[:Modding:Input]]
* [[:Modding:Custom Assets]]
605d6ecd1feb19f8cc8e4934e4736bb2acec547c
836
834
2024-03-27T17:30:51Z
Frans fbg
439888
wikitext
text/x-wiki
[[category:Modding]]
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[:Player:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[Game Loop and Tick]]
* [[ModGameObject]]
* [[ModTransform]]
* [[ModQuaternion]]
* [[ModVector3]]
* [[:ModdingModStructure]]
* [[ModBlock]]
* [[PlayerUI]]
* [[Physics]]
* [[Audio]]
* [[Files]]
* [[Spawnables]]
* [[Input]]
* [[Custom Assets]]
ad94a27e064d01695c2f0c612b66068b44fa9014
837
836
2024-03-27T17:31:37Z
Frans fbg
439888
/* Topics */
wikitext
text/x-wiki
[[category:Modding]]
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source>
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[:Player:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[:Modding:Game Loop and Tick]]
* [[:Modding:ModGameObject]]
* [[:Modding:ModTransform]]
* [[:Modding:ModQuaternion]]
* [[:Modding:ModVector3]]
* [[:Modding:ModStructure]]
* [[:Modding:ModBlock]]
* [[:Modding:PlayerUI]]
* [[:Modding:Physics]]
* [[:Modding:Audio]]
* [[:Modding:Files]]
* [[:Modding:Spawnables]]
* [[:Modding:Input]]
* [[:Modding:Custom Assets]]
605d6ecd1feb19f8cc8e4934e4736bb2acec547c
838
837
2024-03-27T17:48:38Z
Frans fbg
439888
wikitext
text/x-wiki
[[category:Modding]]
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<source lang="text">
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</source>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[:Player:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[:Modding:Game Loop and Tick]]
* [[:Modding:ModGameObject]]
* [[:Modding:ModTransform]]
* [[:Modding:ModQuaternion]]
* [[:Modding:ModVector3]]
* [[:Modding:ModStructure]]
* [[:Modding:ModBlock]]
* [[:Modding:PlayerUI]]
* [[:Modding:Physics]]
* [[:Modding:Audio]]
* [[:Modding:Files]]
* [[:Modding:Spawnables]]
* [[:Modding:Input]]
* [[:Modding:Custom Assets]]
71a1650fd34c6223bb69268ebbd89684b133660c
Modding:Game Loop and Tick
0
217
826
2024-03-27T17:11:18Z
Frans fbg
439888
Created page with "You can add an update function like so. <source> function update() -- do things every update end </source> This is usually added to your <code>main.lua</code> to have an update-loop for your mod. '''Caution:''' As it needs to be declared in global scope, then the function can be overwritten and will be invoked with the re-declaration. There are no validation checks if you have duplicate declarations of the update function. You can use <code>tm.os.GetModDeltaTime()</..."
wikitext
text/x-wiki
You can add an update function like so.
<source>
function update()
-- do things every update
end
</source>
This is usually added to your <code>main.lua</code> to have an update-loop for your mod.
'''Caution:''' As it needs to be declared in global scope, then the function can be overwritten and will be invoked with the re-declaration. There are no validation checks if you have duplicate declarations of the update function.
You can use <code>tm.os.GetModDeltaTime()</code> to get the number of seconds since last.
Mods update are called in sync with UnityEngine update. So, if the mod updates takes long, then the game will be frozen until the update is done.
68b93249433e9760db30cdc264467886bcbe516e
827
826
2024-03-27T17:11:44Z
Frans fbg
439888
wikitext
text/x-wiki
You can add an update function like so.
<source>
function update()
-- do things every update
end
</source>
This is usually added to your <code>main.lua</code> to have an update-loop for your mod.
'''Caution:''' As it needs to be declared in global scope, then the function can be overwritten and will be invoked with the re-declaration. There are no validation checks if you have duplicate declarations of the update function.
You can use <code>tm.os.GetModDeltaTime()</code> to get the number of seconds since last.
Mods update on the main thread. If the mod updates takes long, then the game will be frozen until the update is done.
ec50c6ece60beec1322e7bc9ddff7122212918f2
835
827
2024-03-27T17:30:04Z
Frans fbg
439888
wikitext
text/x-wiki
[[category:Modding]]
You can add an update function like so.
<source>
function update()
-- do things every update
end
</source>
This is usually added to your <code>main.lua</code> to have an update-loop for your mod.
'''Caution:''' As it needs to be declared in global scope, then the function can be overwritten and will be invoked with the re-declaration. There are no validation checks if you have duplicate declarations of the update function.
You can use <code>tm.os.GetModDeltaTime()</code> to get the number of seconds since last.
Mods update on the main thread. If the mod updates takes long, then the game will be frozen until the update is done.
256fd8fefc931eda79b06ee8a92e14fff0c82029
Basic Modding Guide
0
216
839
838
2024-03-27T17:49:07Z
Frans fbg
439888
/* Folder Structure */
wikitext
text/x-wiki
[[category:Modding]]
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<syntaxhighlight lang="text">
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</syntaxhighlight>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[:Player:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[:Modding:Game Loop and Tick]]
* [[:Modding:ModGameObject]]
* [[:Modding:ModTransform]]
* [[:Modding:ModQuaternion]]
* [[:Modding:ModVector3]]
* [[:Modding:ModStructure]]
* [[:Modding:ModBlock]]
* [[:Modding:PlayerUI]]
* [[:Modding:Physics]]
* [[:Modding:Audio]]
* [[:Modding:Files]]
* [[:Modding:Spawnables]]
* [[:Modding:Input]]
* [[:Modding:Custom Assets]]
e51779c8754f9b4dddaee0e06dccc6e4066f8044
847
839
2024-03-27T18:46:46Z
Frans fbg
439888
/* Creating custom maps */
wikitext
text/x-wiki
[[category:Modding]]
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<syntaxhighlight lang="text">
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</syntaxhighlight>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[:Players:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Topics ==
* [[:Modding:Game Loop and Tick]]
* [[:Modding:ModGameObject]]
* [[:Modding:ModTransform]]
* [[:Modding:ModQuaternion]]
* [[:Modding:ModVector3]]
* [[:Modding:ModStructure]]
* [[:Modding:ModBlock]]
* [[:Modding:PlayerUI]]
* [[:Modding:Physics]]
* [[:Modding:Audio]]
* [[:Modding:Files]]
* [[:Modding:Spawnables]]
* [[:Modding:Input]]
* [[:Modding:Custom Assets]]
3323f3af8b3434cb0ae907cb0a5e49b4555e61f5
853
847
2024-03-27T19:48:45Z
Frans fbg
439888
/* Topics */
wikitext
text/x-wiki
[[category:Modding]]
== Setup tooling ==
You can open the .lua files in any editor you like; however, here is a guide for how to set up Visual Studio Code for getting auto suggestion related to Trailmakers API while coding.
# Download, install and open Visual Studio Code
# Go to File -> Preferences -> Extensions
# Search for lua and install the the Lua extension by sumneko (https://marketplace.visualstudio.com/items?itemName=sumneko.lua)
# Go to File -> Preferences -> Settings
# Search for workspace library
# Click Add Item for the Lua > Workspace: Library entry. And enter the path for your chosen API doc file (Ex. <code>trailmakers/mods/trailmakers_docs.lua</code>)
# You are done, your code editor will now make auto suggestions for all our library functions in Trailmakers!
An alternative guide and Lua API definitions can also be found in [https://github.com/ALVAROPING1/Trailmakers-API-LuaLS ALVAROPING's Github Repository], which supports more features.
== Your first mod: Hello World! ==
This is a short guide for printing a basic "Hello World!" message in the mod log. It serves as a basic starter for getting you started with trailmakers modding.
# Create a folder in the mods directory, e.g. <code>C:\Program Files (x86)\Steam\steamapps\common\Trailmakers\mods</code>. Let us call it <code>helloworld</code>.
# Open the folder and create a file named <code>main.lua</code>. Note: For the mod to work, the main.lua file needs to exist, as it is the entry point for the game.
# Open the <code>main.lua</code> file and write <code>tm.os.Log("Hello World!")</code>
# Open trailmakers and activate the <code>helloworld</code> mod (See [[Modding#Installing and using Mods]] for how to activate mods).
# There should now be a file <code>trailmakers/mods/helloworld.log</code>, that should contain the "Hello World!" text that was printed to the log from the mod.
== Notes ==
=== Server Authority ===
All the lua code is ran on the server and then passed to the clients.
The clients never “run” the scripts. The server ensures the mod update is ran, and all the API functions ensures to inform the clients about the updates. This does create some limitations in most of the functionality that can be created for modding API is (mostly) server-based only.
=== Hot Reload ===
Every time you save changes the the mod folder, the game will detect it and reload the mod script automatically while the game is running.
=== Folder Structure ===
Usually mods folder look something like this:
<syntaxhighlight lang="text">
mod root
|- main.lua -- Where code gets executed
|- data_static/ -- Assets/Data shipped with the mod, can only read from during runtime
|- data_dynamic/ -- Data dynamic that can be read/write from during runtime
</syntaxhighlight>
=== Multiple Mods ===
You can have multiple mods activated at once.
The script executions between mods are run seperately and can not access eachother (Physical objects will still interact with each other though)
=== Maps ===
Technically, there is no “map” feature in the current API. But, the community has made Map mods using serialising lists of spawnable objects into the data_static folder that can be loaded by the mod -- This was not something we expected, but we do love it! (We even added a Steam Tag for it).
But, this means that the mods are not detected as “maps” and will not get included in the list of Maps when you start a server.
This would require us to create some kind of metadata for mods that specify that they are “maps”, that the game can detect – we do currently not have any plans on doing this, but we are keeping a keen eye on this!
=== Sandbox ===
Due to security, we sandboxed what Lua functions you can use. Mainly OS and File related functionality, you can still read and write to files, but only using the API that we have created that interacts inside the modding folder.
== Creating custom maps ==
A comprehensive Video guide has been made by [[:Players:TerrorSoul]] which can be watched here:
<youtube>gLzuX_Umxkk</youtube>
== Modding Topics ==
* [[:Modding:Game Loop and Tick]]
* [[:Modding:ModGameObject]]
* [[:Modding:ModTransform]]
* [[:Modding:ModQuaternion]]
* [[:Modding:ModVector3]]
* [[:Modding:ModStructure]]
* [[:Modding:ModBlock]]
* [[:Modding:PlayerUI]]
* [[:Modding:Physics]]
* [[:Modding:Audio]]
* [[:Modding:Files]]
* [[:Modding:Spawnables]]
* [[:Modding:Input]]
* [[:Modding:Custom Assets]]
5817c4e35f12cc91141df713146c2a6fc4e34534
Modding:Game Loop and Tick
0
217
840
835
2024-03-27T17:49:21Z
Frans fbg
439888
wikitext
text/x-wiki
[[category:Modding]]
You can add an update function like so.
<syntaxhighlight>
function update()
-- do things every update
end
</syntaxhighlight>
This is usually added to your <code>main.lua</code> to have an update-loop for your mod.
'''Caution:''' As it needs to be declared in global scope, then the function can be overwritten and will be invoked with the re-declaration. There are no validation checks if you have duplicate declarations of the update function.
You can use <code>tm.os.GetModDeltaTime()</code> to get the number of seconds since last.
Mods update on the main thread. If the mod updates takes long, then the game will be frozen until the update is done.
d6866034e426c5f3e4e1942cda7d66036c48eeee
841
840
2024-03-27T17:49:30Z
Frans fbg
439888
wikitext
text/x-wiki
[[category:Modding]]
You can add an update function like so.
<syntaxhighlight lang="lua">
function update()
-- do things every update
end
</syntaxhighlight>
This is usually added to your <code>main.lua</code> to have an update-loop for your mod.
'''Caution:''' As it needs to be declared in global scope, then the function can be overwritten and will be invoked with the re-declaration. There are no validation checks if you have duplicate declarations of the update function.
You can use <code>tm.os.GetModDeltaTime()</code> to get the number of seconds since last.
Mods update on the main thread. If the mod updates takes long, then the game will be frozen until the update is done.
336000d9f685b7a3c0d695e600a749d11de1789a
Modding:ModGameObject
0
218
842
2024-03-27T17:55:38Z
Frans fbg
439888
Created page with "[[Category:Modding]] {{Stub}} There are several types of ModGameObjects that you can reference. * '''Built-in GameObject''' - Built-in prefabs from Trailmakers, that we have made available to modders can be spawned. * '''Custom Mesh''' - You can add custom meshes to your mod, and spawn those inside the game. * '''Trigger''' - You can spawn Triggers used for checking if things enter/exit a specific area in the world. * '''Players''' - You can get the ModGameObject of p..."
wikitext
text/x-wiki
[[Category:Modding]]
{{Stub}}
There are several types of ModGameObjects that you can reference.
* '''Built-in GameObject''' - Built-in prefabs from Trailmakers, that we have made available to modders can be spawned.
* '''Custom Mesh''' - You can add custom meshes to your mod, and spawn those inside the game.
* '''Trigger''' - You can spawn Triggers used for checking if things enter/exit a specific area in the world.
* '''Players''' - You can get the ModGameObject of players
== Spawning ModGameObject ==
There are various ways you can spawn objects depending on your need.
=== Example - Spawning a built-in object ===
You can get the list of built-in spawnable objects using
<syntaxhighlight lang="lua">
local spawn_name = "PFB_BARREL"
local spawn_position = tm.vector3.Create(0,0,0)
local barrel_obj = tm.physics.SpawnObject(spawn_position, spawn_name)
</syntaxhighlight>
=== Example - Spawning a custom mesh with a custom texture ===
Assuming you have added a mesh.obj and texture.png to your mod folder.
<syntaxhighlight lang="lua">
local mesh_path = "mesh.obj"
local texture_path = "texture.png"
local mesh_key = "myMesh01"
local texture_key = "myTexture01"
local is_kinematic = True
local mass = 1000
local spawn_position = tm.vector3.Create(0,0,0)
tm.physics.AddMesh(mesh_path, mesh_key)
tm.physics.AddTexture(texture_path, texture_key)
local custom_obj = tm.physics.SpawnCustomObject(spawn_position, mesh_key, texture_key, is_kinematic, 1000)
Example - Spawning a trigger
local spawn_position = tm.vector3.Create(0,0,0)
local size = 10
local trigger_obj = tm.physics.SpawnBoxTrigger(spawn_position, size)
</syntaxhighlight>
== Despawning ModGameObject ==
Simple calling the reference to the ModGameObject with Despawn()
<syntaxhighlight lang="lua">
local spawn_name = "PFB_BARREL"
local spawn_position = tm.vector3.Create(0,0,0)
local barrelObj = tm.physics.SpawnObject(spawn_position, spawn_name)
barrelObj.Despawn()
</syntaxhighlight>
== Positioning of ModGameObject ==
ModGameObject has reference to
, meaning you can move, rotate and scale them.
Example - Move a ModGameObject above a player
<syntaxhighlight lang="lua">
local barrel_obj = tm.physics.SpawnObject(tm.vector3.Create(0,0,0), "PFB_BARREL")
local player_position = tm.players.GetPlayerTransform(0).GetPosition()
barrel_obj.GetTransform().SetPosition(player_position + (tm.vector3.Up() * 2))
</syntaxhighlight>
55876dc6bc9c1d2c93c302d8c9b4b2b4fdecc757
Modding:ModTransform
0
219
843
2024-03-27T17:58:42Z
Frans fbg
439888
Created page with "[[Category:Modding]] {{Stub}} Position, rotation and scale of an object. == Working with ModTransforms == [[Modding:ModGameObject]] has a reference to a ModTransform using <code>GetTransform()</code>. === Example - Getting a players transform using players object === <syntaxhighlight lang="lua"> local player_id = 0 local player_transform = tm.players.GetPlayerTransform(player_id) </syntaxhighlight> === Example - Getting a players transform using gameobject transform..."
wikitext
text/x-wiki
[[Category:Modding]]
{{Stub}}
Position, rotation and scale of an object.
== Working with ModTransforms ==
[[Modding:ModGameObject]] has a reference to a ModTransform using <code>GetTransform()</code>.
=== Example - Getting a players transform using players object ===
<syntaxhighlight lang="lua">
local player_id = 0
local player_transform = tm.players.GetPlayerTransform(player_id)
</syntaxhighlight>
=== Example - Getting a players transform using gameobject transform ===
<syntaxhighlight lang="lua">
local player_id = 0
local player_obj = tm.players.GetPlayerGameObject(player_id)
local player_transform = tm.players.GetTransform()
</syntaxhighlight>
=== Example - Getting a spawned game object transform ===
<syntaxhighlight lang="lua">
local spawn_name = "PFB_BARREL"
local spawn_position = tm.vector3.Create(0, 0, 0)
local barrel_obj = tm.physics.SpawnObject(spawn_position, spawn_name)
local barrel_transform = barrel.obj.GetTransform()
</syntaxhighlight>
08d4ff7cbe87897464397403ba46398d10652bd0
Modding:ModQuaternion
0
220
844
2024-03-27T17:59:56Z
Frans fbg
439888
Created page with "[[Category:Modding]] {{Stub}} == Working with ModQuaternion == You can do spherical interporation between two quaternions for smooth movement between rotations using tm.quaternion.Slerp(firstQuaternion, secondQuaternion, t) === Creating Quaternions === There are various ways you can create quaternions <syntaxhighlight lang="lua"> --- quaternion components (float) tm.quaternion.Create(x, y, z, w) --- x (float), y (float), z (float) eulerAngles tm.quaternion.Create(x,..."
wikitext
text/x-wiki
[[Category:Modding]]
{{Stub}}
== Working with ModQuaternion ==
You can do spherical interporation between two quaternions for smooth movement between rotations using tm.quaternion.Slerp(firstQuaternion, secondQuaternion, t)
=== Creating Quaternions ===
There are various ways you can create quaternions
<syntaxhighlight lang="lua">
--- quaternion components (float)
tm.quaternion.Create(x, y, z, w)
--- x (float), y (float), z (float) eulerAngles
tm.quaternion.Create(x, y, z)
--- rotation based on an angle (float) and an axis that is being rotated around (ModVector3)
tm.quaternion.Create(angle, axis)
</syntaxhighlight>
752e9faf7bdbc1fd17a7dc262908336649f3b7a2
Modding:Custom Assets
0
221
845
2024-03-27T18:45:56Z
Frans fbg
439888
Created page with "[[Category:Modding]] {{Stub}} You can add custom assets such as mesh and textures to your mod. <syntaxhighlight lang="lua"> --- Add a mesh to all clients, note this will have to be sent to the client when they join function tm.physics.AddMesh(filename, resourceName) end --- Add a texture to all clients, note this will have to be sent to the client when they join function tm.physics.AddTexture(filename, resourceName) end --- Spawn a custom physics object where mesh and..."
wikitext
text/x-wiki
[[Category:Modding]]
{{Stub}}
You can add custom assets such as mesh and textures to your mod.
<syntaxhighlight lang="lua">
--- Add a mesh to all clients, note this will have to be sent to the client when they join
function tm.physics.AddMesh(filename, resourceName) end
--- Add a texture to all clients, note this will have to be sent to the client when they join
function tm.physics.AddTexture(filename, resourceName) end
--- Spawn a custom physics object where mesh and texture have to be set by AddMesh and AddTexture.
function tm.physics.SpawnCustomObject(position, meshName, textureName) end
</syntaxhighlight>
There is no way to use built-in textures on your custom meshes - you will always have to add a custom texture.
== Feature overview ==
* Supports OBJ meshes and PNG and JPG textures
* Automatic LOD generation (3 levels) of meshes
== Working with custom assets ==
There is a video guide by [[:Player:TerrorSoul]] which can be seen here:
<youtube>oCKOfOvF4Q4</youtube>
The game has a dictionary with all mods and their resources. As you add assets, they get added to this list. Meshes and textures shares the same list, meaning that you cannot use the same key for either textures or meshes.
'''Note:''' Multiple meshes can use the same texture, meaning you can make texture atlases.
=== Best practice ===
Meshes tends to be smaller size and have better compression rate, meaning they are faster to transfer than textures. And as they give the initial visual cue of the mod, then we recommend to first load meshes upfront and then afterwards add the textures.
fd48bba58f638d4bce358042254f988d53c6d3f7
846
845
2024-03-27T18:46:29Z
Frans fbg
439888
/* Working with custom assets */
wikitext
text/x-wiki
[[Category:Modding]]
{{Stub}}
You can add custom assets such as mesh and textures to your mod.
<syntaxhighlight lang="lua">
--- Add a mesh to all clients, note this will have to be sent to the client when they join
function tm.physics.AddMesh(filename, resourceName) end
--- Add a texture to all clients, note this will have to be sent to the client when they join
function tm.physics.AddTexture(filename, resourceName) end
--- Spawn a custom physics object where mesh and texture have to be set by AddMesh and AddTexture.
function tm.physics.SpawnCustomObject(position, meshName, textureName) end
</syntaxhighlight>
There is no way to use built-in textures on your custom meshes - you will always have to add a custom texture.
== Feature overview ==
* Supports OBJ meshes and PNG and JPG textures
* Automatic LOD generation (3 levels) of meshes
== Working with custom assets ==
There is a video guide by [[:Players:TerrorSoul]] which can be seen here:
<youtube>oCKOfOvF4Q4</youtube>
The game has a dictionary with all mods and their resources. As you add assets, they get added to this list. Meshes and textures shares the same list, meaning that you cannot use the same key for either textures or meshes.
'''Note:''' Multiple meshes can use the same texture, meaning you can make texture atlases.
=== Best practice ===
Meshes tends to be smaller size and have better compression rate, meaning they are faster to transfer than textures. And as they give the initial visual cue of the mod, then we recommend to first load meshes upfront and then afterwards add the textures.
3608825ffae442c6468d991df72c5a1f61ef1a36
Modding:Files
0
222
848
2024-03-27T18:50:30Z
Frans fbg
439888
Created page with "[[Category:Modding]] {{Stub}} Trailmakers API supports two ways of handling data, dynamic and static * Dynamic data is for data can be read and written during runtime. The data will persistent between game sessions. * Static data is for data that can be shipped together with the mod and stays static. You can only read the data from here. File Handling is great to use for saving states as data and for them to be loader up later on. Here is a few examples * Leaderboards..."
wikitext
text/x-wiki
[[Category:Modding]]
{{Stub}}
Trailmakers API supports two ways of handling data, dynamic and static
* Dynamic data is for data can be read and written during runtime. The data will persistent between game sessions.
* Static data is for data that can be shipped together with the mod and stays static. You can only read the data from here.
File Handling is great to use for saving states as data and for them to be loader up later on. Here is a few examples
* Leaderboards
* Custom player states (points, currencies, inventory, etc.)
* Mod configurations (custom keybindings, settings for gamemode, etc.)
* Pre-baked data (lookup tables)
It is also heavily used for custom maps.
== Working with files ==
=== Example - Save a list of players in-game as JSON ===
<syntaxhighlight lang="lua">
-- Location to save dynamic data to
local json_path = "players.json"
function onPlayerJoined (callback)
local players = tm.players.CurrentPlayers()
local save_content = {}
for index, value in ipairs(players) do
-- For each player we get some basic info about them...
local name = tm.players.GetPlayerName(value.playerId)
local position = tm.players.GetPlayerTransform(value.playerId).GetPosition()
save_content[index] = {
id = value.playerId,
name = name,
position = {
x = position.x,
y = position.y,
z = position.z
}
}
end
-- Serialise the table as JSON
local content = json.serialize(save_content)
-- Write string data inside data_dynmic folder, check the content!
tm.os.WriteAllText_Dynamic(json_path, content)
end
tm.players.OnPlayerJoined.add(onPlayerJoined)
</syntaxhighlight>
=== Example - Load list of banned players and kick names on list ===
Save the JSON data below as banned_players.json inside data_static
<syntaxhighlight lang="json">
[
"BadPlayerA",
"BadPlayerTwo"
]
</syntaxhighlight>
<syntaxhighlight lang="lua">
local banned_players_path = "banned_players.json"
-- Load the JSON data and parse the JSON object as a table
local banned_player_names = json.parse(tm.os.ReadAllText_Static(banned_players_path))
function onPlayerJoined(callback)
local player_name = tm.players.GetPlayerName(callback.playerId)
-- Every time a player joins, we check if their name is on the naughty list and kick them
for _, value in ipairs(banned_player_names) do
if value == player_name then
tm.os.Log(player_name .. " is on banned players. Kicking!")
tm.players.Kick(callback.playerId)
end
end
end
</syntaxhighlight>
42e716fb5e6fded5cdc0545b282b807cce60410d
Modding:PlayerUI
0
223
849
2024-03-27T19:00:05Z
Frans fbg
439888
Created page with "{{warning}} Mod Window will only be showed if any kind of Player UI have been added to it. If no playerUI has been added, then it wont show. Every mod has its own mod window, that can be spawned with adding elements to it. Every player has their own window, meaning you can displayed unique windows for every player. UI elements gets added to players windows, and stays there until <code>tm.playerUI.ClearUI(playerId)</code> gets called, which removes all elements. Ther..."
wikitext
text/x-wiki
{{warning}} Mod Window will only be showed if any kind of Player UI have been added to it. If no playerUI has been added, then it wont show.
Every mod has its own mod window, that can be spawned with adding elements to it.
Every player has their own window, meaning you can displayed unique windows for every player.
UI elements gets added to players windows, and stays there until <code>tm.playerUI.ClearUI(playerId)</code> gets called, which removes all elements. There is currently no way to remove individual elements.
== How to display values ==
You can display basic text and values using <code>tm.playerUI.AddUILabel(playerId, id, defaultValue)</code>.
=== Example - Show list of players id and names connected to the server===
<syntaxhighlight lang="lua">
function onPlayersChange(callback)
local players = tm.players.CurrentPlayers()
-- Iterate every players UI and update it
for _, player_update in ipairs(players) do
-- Clear player_updates window
tm.playerUI.ClearUI(player_update.playerId)
-- Iterate every player again and add labels for them to player_update
for _, player_info in ipairs(players) do
local name = tm.players.GetPlayerName(player_info.playerId)
tm.playerUI.AddUILabel(player_update.playerId, "player_" .. player_info.playerId, "Player " .. player_info.playerId .. ": " .. name)
end
end
end
tm.players.OnPlayerJoined.add(onPlayersChange)
tm.players.OnPlayerLeft.add(onPlayersChange)
</syntaxhighlight>
== How to work with text fields ==
You can display text fields that you can edit
=== Example - Spawn built-in gameobject based on text field ===
<syntaxhighlight lang="lua">
-- Text state for each player
player_state = {}
-- Spawn object above players head
function onSpawn (callback)
local pos = tm.players.GetPlayerTransform(callback.playerId).GetPosition()
local pos = pos + tm.vector3.Up() * 2
-- callback.value returns the value of the textfield
tm.physics.SpawnObject(pos, player_state[callback.playerId])
end
-- Save the text change to global state, such that onSpawn knows what the value is
function onTextChange (callback)
player_state[callback.playerId] = callback.value
end
function onPlayerJoined (callback)
-- Set default value
player_state[callback.playerId] = "PFB_Barrel"
tm.playerUI.AddUIText(callback.playerId, "text", player_state[callback.playerId], onTextChange)
tm.playerUI.AddUIButton(callback.playerId, "btn", "Spawn", onSpawn)
end
tm.players.OnPlayerJoined.add(onPlayerJoined)
</syntaxhighlight>
== How to work with buttons ==
You can add clickable buttons that can execute functions using <code>tm.playerUI.AddUIButton(playerId, id, defaultValue, callback, data)</code>
The callback function includes a parameter argument object with a playerId string which refeers to which player clicked the button.
<syntaxhighlight lang="lua">
function onButtonClicked(callback)
tm.os.Log("Which player clicked? " .. callback.playerId)
end
tm.playerUI.AddUIButton(0, "btn_01", "Button", onButtonClicked)
Example - Spawn a barrel above the player who clicks a button
function onButtonPressed(callback)
local pos = tm.players.GetPlayerTransform(callback.playerId).GetPosition()
local pos = pos + tm.vector3.Up() * 2
tm.physics.SpawnObject(pos, "PFB_BARREL")
end
function onPlayerJoined(callback)
-- Give the new player a UI button which calls "onButtonPressed" function.
tm.playerUI.AddUIButton(callback.playerId, "spawn", "Spawn", onButtonPressed)
end
tm.players.OnPlayerJoined.add(onPlayerJoined)
</syntaxhighlight>
7012ec21ca9e17ac87850031abe250a81ae3dc6d
850
849
2024-03-27T19:01:49Z
Frans fbg
439888
wikitext
text/x-wiki
Every mod has its own mod window, that can be spawned with adding elements to it.
Every player has their own window, meaning you can displayed unique windows for every player.
Mod Window will only be showed if any kind of Player UI have been added to it. If no playerUI has been added, then it wont show.
UI elements gets added to players windows, and stays there until <code>tm.playerUI.ClearUI(playerId)</code> gets called, which removes all elements. There is currently no way to remove individual elements.
== How to display values ==
You can display basic text and values using <code>tm.playerUI.AddUILabel(playerId, id, defaultValue)</code>.
=== Example - Show list of players id and names connected to the server===
<syntaxhighlight lang="lua">
function onPlayersChange(callback)
local players = tm.players.CurrentPlayers()
-- Iterate every players UI and update it
for _, player_update in ipairs(players) do
-- Clear player_updates window
tm.playerUI.ClearUI(player_update.playerId)
-- Iterate every player again and add labels for them to player_update
for _, player_info in ipairs(players) do
local name = tm.players.GetPlayerName(player_info.playerId)
tm.playerUI.AddUILabel(player_update.playerId, "player_" .. player_info.playerId, "Player " .. player_info.playerId .. ": " .. name)
end
end
end
tm.players.OnPlayerJoined.add(onPlayersChange)
tm.players.OnPlayerLeft.add(onPlayersChange)
</syntaxhighlight>
== How to work with text fields ==
You can display text fields that you can edit
=== Example - Spawn built-in gameobject based on text field ===
<syntaxhighlight lang="lua">
-- Text state for each player
player_state = {}
-- Spawn object above players head
function onSpawn (callback)
local pos = tm.players.GetPlayerTransform(callback.playerId).GetPosition()
local pos = pos + tm.vector3.Up() * 2
-- callback.value returns the value of the textfield
tm.physics.SpawnObject(pos, player_state[callback.playerId])
end
-- Save the text change to global state, such that onSpawn knows what the value is
function onTextChange (callback)
player_state[callback.playerId] = callback.value
end
function onPlayerJoined (callback)
-- Set default value
player_state[callback.playerId] = "PFB_Barrel"
tm.playerUI.AddUIText(callback.playerId, "text", player_state[callback.playerId], onTextChange)
tm.playerUI.AddUIButton(callback.playerId, "btn", "Spawn", onSpawn)
end
tm.players.OnPlayerJoined.add(onPlayerJoined)
</syntaxhighlight>
== How to work with buttons ==
You can add clickable buttons that can execute functions using <code>tm.playerUI.AddUIButton(playerId, id, defaultValue, callback, data)</code>
The callback function includes a parameter argument object with a playerId string which refeers to which player clicked the button.
<syntaxhighlight lang="lua">
function onButtonClicked(callback)
tm.os.Log("Which player clicked? " .. callback.playerId)
end
tm.playerUI.AddUIButton(0, "btn_01", "Button", onButtonClicked)
Example - Spawn a barrel above the player who clicks a button
function onButtonPressed(callback)
local pos = tm.players.GetPlayerTransform(callback.playerId).GetPosition()
local pos = pos + tm.vector3.Up() * 2
tm.physics.SpawnObject(pos, "PFB_BARREL")
end
function onPlayerJoined(callback)
-- Give the new player a UI button which calls "onButtonPressed" function.
tm.playerUI.AddUIButton(callback.playerId, "spawn", "Spawn", onButtonPressed)
end
tm.players.OnPlayerJoined.add(onPlayerJoined)
</syntaxhighlight>
8f5c7748be3e67661f2bce3182cb5095166c1721
851
850
2024-03-27T19:02:33Z
Frans fbg
439888
wikitext
text/x-wiki
[[Category:Modding]]
Every mod has its own mod window, that can be spawned with adding elements to it.
Every player has their own window, meaning you can displayed unique windows for every player.
Mod Window will only be showed if any kind of Player UI have been added to it. If no playerUI has been added, then it wont show.
UI elements gets added to players windows, and stays there until <code>tm.playerUI.ClearUI(playerId)</code> gets called, which removes all elements. There is currently no way to remove individual elements.
== How to display values ==
You can display basic text and values using <code>tm.playerUI.AddUILabel(playerId, id, defaultValue)</code>.
=== Example - Show list of players id and names connected to the server===
<syntaxhighlight lang="lua">
function onPlayersChange(callback)
local players = tm.players.CurrentPlayers()
-- Iterate every players UI and update it
for _, player_update in ipairs(players) do
-- Clear player_updates window
tm.playerUI.ClearUI(player_update.playerId)
-- Iterate every player again and add labels for them to player_update
for _, player_info in ipairs(players) do
local name = tm.players.GetPlayerName(player_info.playerId)
tm.playerUI.AddUILabel(player_update.playerId, "player_" .. player_info.playerId, "Player " .. player_info.playerId .. ": " .. name)
end
end
end
tm.players.OnPlayerJoined.add(onPlayersChange)
tm.players.OnPlayerLeft.add(onPlayersChange)
</syntaxhighlight>
== How to work with text fields ==
You can display text fields that you can edit
=== Example - Spawn built-in gameobject based on text field ===
<syntaxhighlight lang="lua">
-- Text state for each player
player_state = {}
-- Spawn object above players head
function onSpawn (callback)
local pos = tm.players.GetPlayerTransform(callback.playerId).GetPosition()
local pos = pos + tm.vector3.Up() * 2
-- callback.value returns the value of the textfield
tm.physics.SpawnObject(pos, player_state[callback.playerId])
end
-- Save the text change to global state, such that onSpawn knows what the value is
function onTextChange (callback)
player_state[callback.playerId] = callback.value
end
function onPlayerJoined (callback)
-- Set default value
player_state[callback.playerId] = "PFB_Barrel"
tm.playerUI.AddUIText(callback.playerId, "text", player_state[callback.playerId], onTextChange)
tm.playerUI.AddUIButton(callback.playerId, "btn", "Spawn", onSpawn)
end
tm.players.OnPlayerJoined.add(onPlayerJoined)
</syntaxhighlight>
== How to work with buttons ==
You can add clickable buttons that can execute functions using <code>tm.playerUI.AddUIButton(playerId, id, defaultValue, callback, data)</code>
The callback function includes a parameter argument object with a playerId string which refeers to which player clicked the button.
<syntaxhighlight lang="lua">
function onButtonClicked(callback)
tm.os.Log("Which player clicked? " .. callback.playerId)
end
tm.playerUI.AddUIButton(0, "btn_01", "Button", onButtonClicked)
Example - Spawn a barrel above the player who clicks a button
function onButtonPressed(callback)
local pos = tm.players.GetPlayerTransform(callback.playerId).GetPosition()
local pos = pos + tm.vector3.Up() * 2
tm.physics.SpawnObject(pos, "PFB_BARREL")
end
function onPlayerJoined(callback)
-- Give the new player a UI button which calls "onButtonPressed" function.
tm.playerUI.AddUIButton(callback.playerId, "spawn", "Spawn", onButtonPressed)
end
tm.players.OnPlayerJoined.add(onPlayerJoined)
</syntaxhighlight>
22e90bc43b1b0c49ccbd86bf4f391b658d35800d
Category:Modding
14
224
852
2024-03-27T19:02:54Z
Frans fbg
439888
Created blank page
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:High Seas Steam.jpg
6
225
854
2024-03-27T20:10:31Z
Frans fbg
439888
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Airborne Steam.jpg
6
226
855
2024-03-27T20:11:20Z
Frans fbg
439888
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Template:Clear
10
227
856
2024-03-27T20:15:22Z
Frans fbg
439888
Created page with "<includeonly><div style="clear:{{{1|both}}}"></div></includeonly><noinclude> {{doc}} [[Category:Formatting templates|{{PAGENAME}}]]</noinclude>"
wikitext
text/x-wiki
<includeonly><div style="clear:{{{1|both}}}"></div></includeonly><noinclude>
{{doc}}
[[Category:Formatting templates|{{PAGENAME}}]]</noinclude>
4ef4b3c7d72266189176f628dde0e812ddb4480e
File:Space voyager steam.jpg
6
228
857
2024-03-27T20:21:17Z
Frans fbg
439888
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Decals action pack steam.jpg
6
229
858
2024-03-27T20:24:55Z
Frans fbg
439888
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Decals expression pack steam.jpg
6
230
859
2024-03-27T20:26:05Z
Frans fbg
439888
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Skin pack 2 steam.jpg
6
231
860
2024-03-27T20:26:14Z
Frans fbg
439888
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Skin pack steam.jpg
6
232
861
2024-03-27T20:26:24Z
Frans fbg
439888
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Hat pack steam.jpg
6
233
862
2024-03-27T20:26:35Z
Frans fbg
439888
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
DLC
0
141
863
575
2024-03-27T20:28:17Z
Frans fbg
439888
wikitext
text/x-wiki
{{Stub}}
This article contains information about the Downloadable Content (DLC) released for Trailmakers.
== Expansions ==
=== High Seas Expansion ===
[[File:High_Seas_Steam.jpg|thumb|right|400px|Steam Store Image]]
[[High Seas]] Expansions was the first expansion package for Trailmakers. It's contains a completely new [[Sandbox]] map, where people are faced with strong winds and waters, with a completely revamped physics-based system for weather.
{{clear}}
=== Airborne Expansion ===
[[File:Airborne_Steam.jpg|thumb|right|400px|Steam Store Image]]
[[Airborne]] Expansion is a brand new campaign experience for the player, where they are tasked to save the peaceful [[Chirpos]] from the [[Robot Pirate]] invasions. It features a campaign with focus on air combat and navigation.
{{clear}}
== Packs ==
=== Skin Pack ===
[[File:skin_pack_steam.jpg|thumb|right|400px|Steam Store Image]]
{{clear}}
=== Hat Pack ===
[[File:hat_pack_steam.jpg|thumb|right|400px|Steam Store Image]]
{{clear}}
=== Skin Pack 2 ===
[[File:skin_pack_2_steam.jpg|thumb|right|400px|Steam Store Image]]
{{clear}}
=== Decals Expression Pack ===
[[File:decals_expression_pack_steam.jpg|thumb|right|400px|Steam Store Image]]
{{clear}}
=== Decals Action Pack ===
[[File:decals_action_pack_steam.jpg|thumb|right|400px|Steam Store Image]]
{{clear}}
=== Space Voyager Pack ===
[[File:Space_voyager_steam.jpg|thumb|right|400px|Steam Store Image]]
The space voyager pack was released together [[Space Sector]] map during the 1.8 updated. The pack features a set of sci-fi looking blocks such as [[Rocket Engine]], [[Space Fighter Seat]] and a new set of accessory block, cosmetics items for the players character and 18 new decals.
{{clear}}
7242bee33238aa20cd73334f3ff57fd6a718d558
867
863
2024-03-28T07:58:26Z
Frans fbg
439888
wikitext
text/x-wiki
{{Stub}}
This article contains information about the Downloadable Content (DLC) released for Trailmakers.
== Expansions ==
{{Flexstart|inline}}
{{InfoboxGame
|title=High Seas Expansion
|image=High_Seas_Steam.jpg
|caption=High Seas Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=10 December 2021
}}
{{InfoboxGame
|title=Airborne Expansion
|image=Airborne_Steam.jpg
|caption=Airborne Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=27 April 2023
}}
{{Flexend}}
== Packs ==
{{Flexstart|inline}}
{{InfoboxGame
|title=Skin Pack
|image=skin_pack_steam.jpg
|caption=Skin Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Hat Pack
|image=hat_pack_steam.jpg
|caption=Hat Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Skin Pack 2
|image=skin_pack_2_steam.jpg
|caption=Skin Pack 2 Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=1 July 2020
}}
{{InfoboxGame
|title=Decals Expression Pack
|image=decals_expression_pack_steam.jpg
|caption=Decals Expression Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Decals Action Pack
|image=decals_action_pack_steam.jpg
|caption=Decals Action Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Space Voyager Pack
|image=space_voyager_pack_steam.jpg
|caption=Space Voyager Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=31 October 2022
}}
{{InfoboxGame
|title=Rescue Pack
|image=rescue_pack_steam.jpg
|caption=Rescue Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=coming soon
}}
{{Flexend}}
=== Skin Pack ===
[[File:skin_pack_steam.jpg|thumb|right|400px|Steam Store Image]]
{{clear}}
=== Hat Pack ===
[[File:hat_pack_steam.jpg|thumb|right|400px|Steam Store Image]]
{{clear}}
=== Skin Pack 2 ===
[[File:skin_pack_2_steam.jpg|thumb|right|400px|Steam Store Image]]
{{clear}}
=== Decals Expression Pack ===
[[File:decals_expression_pack_steam.jpg|thumb|right|400px|Steam Store Image]]
{{clear}}
=== Decals Action Pack ===
[[File:decals_action_pack_steam.jpg|thumb|right|400px|Steam Store Image]]
{{clear}}
=== Space Voyager Pack ===
[[File:Space_voyager_steam.jpg|thumb|right|400px|Steam Store Image]]
The space voyager pack was released together [[Space Sector]] map during the 1.8 updated. The pack features a set of sci-fi looking blocks such as [[Rocket Engine]], [[Space Fighter Seat]] and a new set of accessory block, cosmetics items for the players character and 18 new decals.
{{clear}}
ad5d5971f414ebeaa002c0f1595ea4ca6e40d6fc
868
867
2024-03-28T07:58:57Z
Frans fbg
439888
wikitext
text/x-wiki
{{Stub}}
This article contains information about the Downloadable Content (DLC) released for Trailmakers.
== Expansions ==
{{Flexstart|inline}}
{{InfoboxGame
|title=High Seas Expansion
|image=High_Seas_Steam.jpg
|caption=High Seas Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=10 December 2021
}}
{{InfoboxGame
|title=Airborne Expansion
|image=Airborne_Steam.jpg
|caption=Airborne Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=27 April 2023
}}
{{Flexend}}
== Packs ==
{{Flexstart|inline}}
{{InfoboxGame
|title=Skin Pack
|image=skin_pack_steam.jpg
|caption=Skin Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Hat Pack
|image=hat_pack_steam.jpg
|caption=Hat Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Skin Pack 2
|image=skin_pack_2_steam.jpg
|caption=Skin Pack 2 Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=1 July 2020
}}
{{InfoboxGame
|title=Decals Expression Pack
|image=decals_expression_pack_steam.jpg
|caption=Decals Expression Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Decals Action Pack
|image=decals_action_pack_steam.jpg
|caption=Decals Action Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Space Voyager Pack
|image=space_voyager_steam.jpg
|caption=Space Voyager Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=31 October 2022
}}
{{InfoboxGame
|title=Rescue Pack
|image=rescue_pack_steam.jpg
|caption=Rescue Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=coming soon
}}
{{Flexend}}
687592d38104431e921f064c84ec1ae5632447e2
870
868
2024-03-28T07:59:35Z
Frans fbg
439888
wikitext
text/x-wiki
{{Stub}}
This article contains information about the Downloadable Content (DLC) released for Trailmakers.
== Expansions ==
{{Flexstart|inline}}
{{InfoboxGame
|title=High Seas Expansion
|image=High_Seas_Steam.jpg
|caption=High Seas Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=10 December 2021
}}
{{InfoboxGame
|title=Airborne Expansion
|image=Airborne_Steam.jpg
|caption=Airborne Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=27 April 2023
}}
{{Flexend}}
== Packs ==
{{Flexstart|inline}}
{{InfoboxGame
|title=Skin Pack
|image=skin_pack_steam.jpg
|caption=Skin Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Hat Pack
|image=hat_pack_steam.jpg
|caption=Hat Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Skin Pack 2
|image=skin_pack_2_steam.jpg
|caption=Skin Pack 2 Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=1 July 2020
}}
{{InfoboxGame
|title=Decals Expression Pack
|image=decals_expression_pack_steam.jpg
|caption=Decals Expression Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Decals Action Pack
|image=decals_action_pack_steam.jpg
|caption=Decals Action Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Space Voyager Pack
|image=space_voyager_steam.jpg
|caption=Space Voyager Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=31 October 2022
}}
{{InfoboxGame
|title=Rescue Pack
|image=Rescue_pack_steam.jpg
|caption=Rescue Pack Steam store header
|platform=Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=coming soon
}}
{{Flexend}}
5226abae505b91c0b7ce8096c2e326e6282a35e1
871
870
2024-03-28T08:02:06Z
Frans fbg
439888
Steam links
wikitext
text/x-wiki
{{Stub}}
This article contains information about the Downloadable Content (DLC) released for Trailmakers.
== Expansions ==
{{Flexstart|inline}}
{{InfoboxGame
|title=High Seas Expansion
|image=High_Seas_Steam.jpg
|caption=High Seas Steam store header
|platform=[https://store.steampowered.com/app/1607390/Trailmakers_High_Seas_Expansion/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=10 December 2021
}}
{{InfoboxGame
|title=Airborne Expansion
|image=Airborne_Steam.jpg
|caption=Airborne Steam store header
|platform=[https://store.steampowered.com/app/2285970/Trailmakers_Airborne_Expansion/ Steam, Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=27 April 2023
]}}
{{Flexend}}
== Packs ==
{{Flexstart|inline}}
{{InfoboxGame
|title=Skin Pack
|image=skin_pack_steam.jpg
|caption=Skin Pack Steam store header
|platform=[https://store.steampowered.com/app/1183540/Trailmakers_Skin_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Hat Pack
|image=hat_pack_steam.jpg
|caption=Hat Pack Steam store header
|platform=[https://store.steampowered.com/app/1171470/Trailmakers_Hat_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Skin Pack 2
|image=skin_pack_2_steam.jpg
|caption=Skin Pack 2 Pack Steam store header
|platform=[https://store.steampowered.com/app/1333570/Trailmakers_Skin_Pack_2/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=1 July 2020
}}
{{InfoboxGame
|title=Decals Expression Pack
|image=decals_expression_pack_steam.jpg
|caption=Decals Expression Pack Steam store header
|platform=[https://store.steampowered.com/app/2054120/Trailmakers_Decals_Expression_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Decals Action Pack
|image=decals_action_pack_steam.jpg
|caption=Decals Action Pack Steam store header
|platform=[https://store.steampowered.com/app/2054110/Trailmakers_Decals_Action_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Space Voyager Pack
|image=space_voyager_steam.jpg
|caption=Space Voyager Pack Steam store header
|platform=[https://store.steampowered.com/app/2579530/Trailmakers_Space_Voyager_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=31 October 2022
}}
{{InfoboxGame
|title=Rescue Pack
|image=Rescue_pack_steam.jpg
|caption=Rescue Pack Steam store header
|platform=[https://store.steampowered.com/app/2863610/Trailmakers_Rescue_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=coming soon
}}
{{Flexend}}
1585120e07ecfeb61eba23dc876b76b81e56be77
872
871
2024-03-28T08:02:32Z
Frans fbg
439888
Fixed missing ]
wikitext
text/x-wiki
{{Stub}}
This article contains information about the Downloadable Content (DLC) released for Trailmakers.
== Expansions ==
{{Flexstart|inline}}
{{InfoboxGame
|title=High Seas Expansion
|image=High_Seas_Steam.jpg
|caption=High Seas Steam store header
|platform=[https://store.steampowered.com/app/1607390/Trailmakers_High_Seas_Expansion/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=10 December 2021
}}
{{InfoboxGame
|title=Airborne Expansion
|image=Airborne_Steam.jpg
|caption=Airborne Steam store header
|platform=[https://store.steampowered.com/app/2285970/Trailmakers_Airborne_Expansion/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=27 April 2023
]}}
{{Flexend}}
== Packs ==
{{Flexstart|inline}}
{{InfoboxGame
|title=Skin Pack
|image=skin_pack_steam.jpg
|caption=Skin Pack Steam store header
|platform=[https://store.steampowered.com/app/1183540/Trailmakers_Skin_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Hat Pack
|image=hat_pack_steam.jpg
|caption=Hat Pack Steam store header
|platform=[https://store.steampowered.com/app/1171470/Trailmakers_Hat_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Skin Pack 2
|image=skin_pack_2_steam.jpg
|caption=Skin Pack 2 Pack Steam store header
|platform=[https://store.steampowered.com/app/1333570/Trailmakers_Skin_Pack_2/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=1 July 2020
}}
{{InfoboxGame
|title=Decals Expression Pack
|image=decals_expression_pack_steam.jpg
|caption=Decals Expression Pack Steam store header
|platform=[https://store.steampowered.com/app/2054120/Trailmakers_Decals_Expression_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Decals Action Pack
|image=decals_action_pack_steam.jpg
|caption=Decals Action Pack Steam store header
|platform=[https://store.steampowered.com/app/2054110/Trailmakers_Decals_Action_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Space Voyager Pack
|image=space_voyager_steam.jpg
|caption=Space Voyager Pack Steam store header
|platform=[https://store.steampowered.com/app/2579530/Trailmakers_Space_Voyager_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=31 October 2022
}}
{{InfoboxGame
|title=Rescue Pack
|image=Rescue_pack_steam.jpg
|caption=Rescue Pack Steam store header
|platform=[https://store.steampowered.com/app/2863610/Trailmakers_Rescue_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=coming soon
}}
{{Flexend}}
801d98d71da8574f2362d3fea113a18fc8d276f2
873
872
2024-03-28T08:04:38Z
Frans fbg
439888
wikitext
text/x-wiki
{{Stub}}
This article contains information about the Downloadable Content (DLC) released for Trailmakers.
== Expansions ==
{{Flexstart|inline}}
{{InfoboxGame
|title=High Seas Expansion
|image=High_Seas_Steam.jpg
|caption=High Seas Steam store header
|platform=[https://store.steampowered.com/app/1607390/Trailmakers_High_Seas_Expansion/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-high-seas-expansion/9P6KGLTDMGQV/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-high-seas-expansion/9P6KGLTDMGQV/0010 Xbox Series]
|release=10 December 2021
}}
{{InfoboxGame
|title=Airborne Expansion
|image=Airborne_Steam.jpg
|caption=Airborne Steam store header
|platform=[https://store.steampowered.com/app/2285970/Trailmakers_Airborne_Expansion/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=27 April 2023
]}}
{{Flexend}}
== Packs ==
{{Flexstart|inline}}
{{InfoboxGame
|title=Skin Pack
|image=skin_pack_steam.jpg
|caption=Skin Pack Steam store header
|platform=[https://store.steampowered.com/app/1183540/Trailmakers_Skin_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Hat Pack
|image=hat_pack_steam.jpg
|caption=Hat Pack Steam store header
|platform=[https://store.steampowered.com/app/1171470/Trailmakers_Hat_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=11 December 2019
}}
{{InfoboxGame
|title=Skin Pack 2
|image=skin_pack_2_steam.jpg
|caption=Skin Pack 2 Pack Steam store header
|platform=[https://store.steampowered.com/app/1333570/Trailmakers_Skin_Pack_2/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=1 July 2020
}}
{{InfoboxGame
|title=Decals Expression Pack
|image=decals_expression_pack_steam.jpg
|caption=Decals Expression Pack Steam store header
|platform=[https://store.steampowered.com/app/2054120/Trailmakers_Decals_Expression_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Decals Action Pack
|image=decals_action_pack_steam.jpg
|caption=Decals Action Pack Steam store header
|platform=[https://store.steampowered.com/app/2054110/Trailmakers_Decals_Action_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=22 August 2022
}}
{{InfoboxGame
|title=Space Voyager Pack
|image=space_voyager_steam.jpg
|caption=Space Voyager Pack Steam store header
|platform=[https://store.steampowered.com/app/2579530/Trailmakers_Space_Voyager_Pack/ Steam], Windows Store, PS4, PS5, Xbox One, Xbox Series
|release=31 October 2022
}}
{{InfoboxGame
|title=Rescue Pack
|image=Rescue_pack_steam.jpg
|caption=Rescue Pack Steam store header
|platform=[https://store.steampowered.com/app/2863610/Trailmakers_Rescue_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox Series]
|release=coming soon
}}
{{Flexend}}
7892faf1061a622637b4521b4997de2034feffca
874
873
2024-03-28T08:10:12Z
Frans fbg
439888
Xbox one and Series store links
wikitext
text/x-wiki
{{Stub}}
This article contains information about the Downloadable Content (DLC) released for Trailmakers.
== Expansions ==
{{Flexstart|inline}}
{{InfoboxGame
|title=High Seas Expansion
|image=High_Seas_Steam.jpg
|caption=High Seas Steam store header
|platform=[https://store.steampowered.com/app/1607390/Trailmakers_High_Seas_Expansion/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-high-seas-expansion/9P6KGLTDMGQV/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-high-seas-expansion/9P6KGLTDMGQV/0010 Xbox Series]
|release=10 December 2021
}}
{{InfoboxGame
|title=Airborne Expansion
|image=Airborne_Steam.jpg
|caption=Airborne Steam store header
|platform=[https://store.steampowered.com/app/2285970/Trailmakers_Airborne_Expansion/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-airborne-expansion/9N3TK5JBNZXT/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-airborne-expansion/9N3TK5JBNZXT/0010 Xbox Series]
|release=27 April 2023
]}}
{{Flexend}}
== Packs ==
{{Flexstart|inline}}
{{InfoboxGame
|title=Skin Pack
|image=skin_pack_steam.jpg
|caption=Skin Pack Steam store header
|platform=[https://store.steampowered.com/app/1183540/Trailmakers_Skin_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-skin-pack/9P2XXT5WJ35B/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-skin-pack/9P2XXT5WJ35B/0010 Xbox Series]
|release=11 December 2019
}}
{{InfoboxGame
|title=Hat Pack
|image=hat_pack_steam.jpg
|caption=Hat Pack Steam store header
|platform=[https://store.steampowered.com/app/1171470/Trailmakers_Hat_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-hat-pack/9N0K6GC6G0GL/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-hat-pack/9N0K6GC6G0GL/0010 Xbox Series]
|release=11 December 2019
}}
{{InfoboxGame
|title=Skin Pack 2
|image=skin_pack_2_steam.jpg
|caption=Skin Pack 2 Pack Steam store header
|platform=[https://store.steampowered.com/app/1333570/Trailmakers_Skin_Pack_2/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/skin-pack-2/9MW4R2FJ3BRC/0010 Xbox One], [https://www.xbox.com/en-US/games/store/skin-pack-2/9MW4R2FJ3BRC/0010 Xbox Series]
|release=1 July 2020
}}
{{InfoboxGame
|title=Decals Expression Pack
|image=decals_expression_pack_steam.jpg
|caption=Decals Expression Pack Steam store header
|platform=[https://store.steampowered.com/app/2054120/Trailmakers_Decals_Expression_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/decals-expression-pack/9NCWQ30MJCTD/0010 Xbox One], [https://www.xbox.com/en-US/games/store/decals-expression-pack/9NCWQ30MJCTD/0010 Xbox Series]
|release=22 August 2022
}}
{{InfoboxGame
|title=Decals Action Pack
|image=decals_action_pack_steam.jpg
|caption=Decals Action Pack Steam store header
|platform=[https://store.steampowered.com/app/2054110/Trailmakers_Decals_Action_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/decals-action-pack/9N39238JB847/0010 Xbox One], [https://www.xbox.com/en-US/games/store/decals-action-pack/9N39238JB847/0010 Xbox Series]
|release=22 August 2022
}}
{{InfoboxGame
|title=Space Voyager Pack
|image=space_voyager_steam.jpg
|caption=Space Voyager Pack Steam store header
|platform=[https://store.steampowered.com/app/2579530/Trailmakers_Space_Voyager_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox Series]
|release=31 October 2022
[}}
{{InfoboxGame
|title=Rescue Pack
|image=Rescue_pack_steam.jpg
|caption=Rescue Pack Steam store header
|platform=[https://store.steampowered.com/app/2863610/Trailmakers_Rescue_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox Series]
|release=coming soon
}}
{{Flexend}}
71ff45c57b08a5064c8dc6fe5bfac7db600ce59d
875
874
2024-03-28T08:10:37Z
Frans fbg
439888
wikitext
text/x-wiki
{{Stub}}
This article contains information about the Downloadable Content (DLC) released for Trailmakers.
== Expansions ==
{{Flexstart|inline}}
{{InfoboxGame
|title=High Seas Expansion
|image=High_Seas_Steam.jpg
|caption=High Seas Steam store header
|platform=[https://store.steampowered.com/app/1607390/Trailmakers_High_Seas_Expansion/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-high-seas-expansion/9P6KGLTDMGQV/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-high-seas-expansion/9P6KGLTDMGQV/0010 Xbox Series]
|release=10 December 2021
}}
{{InfoboxGame
|title=Airborne Expansion
|image=Airborne_Steam.jpg
|caption=Airborne Steam store header
|platform=[https://store.steampowered.com/app/2285970/Trailmakers_Airborne_Expansion/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-airborne-expansion/9N3TK5JBNZXT/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-airborne-expansion/9N3TK5JBNZXT/0010 Xbox Series]
|release=27 April 2023
}}
{{Flexend}}
== Packs ==
{{Flexstart|inline}}
{{InfoboxGame
|title=Skin Pack
|image=skin_pack_steam.jpg
|caption=Skin Pack Steam store header
|platform=[https://store.steampowered.com/app/1183540/Trailmakers_Skin_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-skin-pack/9P2XXT5WJ35B/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-skin-pack/9P2XXT5WJ35B/0010 Xbox Series]
|release=11 December 2019
}}
{{InfoboxGame
|title=Hat Pack
|image=hat_pack_steam.jpg
|caption=Hat Pack Steam store header
|platform=[https://store.steampowered.com/app/1171470/Trailmakers_Hat_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-hat-pack/9N0K6GC6G0GL/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-hat-pack/9N0K6GC6G0GL/0010 Xbox Series]
|release=11 December 2019
}}
{{InfoboxGame
|title=Skin Pack 2
|image=skin_pack_2_steam.jpg
|caption=Skin Pack 2 Pack Steam store header
|platform=[https://store.steampowered.com/app/1333570/Trailmakers_Skin_Pack_2/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/skin-pack-2/9MW4R2FJ3BRC/0010 Xbox One], [https://www.xbox.com/en-US/games/store/skin-pack-2/9MW4R2FJ3BRC/0010 Xbox Series]
|release=1 July 2020
}}
{{InfoboxGame
|title=Decals Expression Pack
|image=decals_expression_pack_steam.jpg
|caption=Decals Expression Pack Steam store header
|platform=[https://store.steampowered.com/app/2054120/Trailmakers_Decals_Expression_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/decals-expression-pack/9NCWQ30MJCTD/0010 Xbox One], [https://www.xbox.com/en-US/games/store/decals-expression-pack/9NCWQ30MJCTD/0010 Xbox Series]
|release=22 August 2022
}}
{{InfoboxGame
|title=Decals Action Pack
|image=decals_action_pack_steam.jpg
|caption=Decals Action Pack Steam store header
|platform=[https://store.steampowered.com/app/2054110/Trailmakers_Decals_Action_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/decals-action-pack/9N39238JB847/0010 Xbox One], [https://www.xbox.com/en-US/games/store/decals-action-pack/9N39238JB847/0010 Xbox Series]
|release=22 August 2022
}}
{{InfoboxGame
|title=Space Voyager Pack
|image=space_voyager_steam.jpg
|caption=Space Voyager Pack Steam store header
|platform=[https://store.steampowered.com/app/2579530/Trailmakers_Space_Voyager_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox Series]
|release=31 October 2022
[}}
{{InfoboxGame
|title=Rescue Pack
|image=Rescue_pack_steam.jpg
|caption=Rescue Pack Steam store header
|platform=[https://store.steampowered.com/app/2863610/Trailmakers_Rescue_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox Series]
|release=coming soon
}}
{{Flexend}}
7849f04a14228fe9551b22c3e484d43f1ade043e
876
875
2024-03-28T08:11:04Z
Frans fbg
439888
wikitext
text/x-wiki
{{Stub}}
This article contains information about the Downloadable Content (DLC) released for Trailmakers.
== Expansions ==
{{Flexstart|inline}}
{{InfoboxGame
|title=High Seas Expansion
|image=High_Seas_Steam.jpg
|caption=High Seas Steam store header
|platform=[https://store.steampowered.com/app/1607390/Trailmakers_High_Seas_Expansion/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-high-seas-expansion/9P6KGLTDMGQV/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-high-seas-expansion/9P6KGLTDMGQV/0010 Xbox Series]
|release=10 December 2021
}}
{{InfoboxGame
|title=Airborne Expansion
|image=Airborne_Steam.jpg
|caption=Airborne Steam store header
|platform=[https://store.steampowered.com/app/2285970/Trailmakers_Airborne_Expansion/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-airborne-expansion/9N3TK5JBNZXT/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-airborne-expansion/9N3TK5JBNZXT/0010 Xbox Series]
|release=27 April 2023
}}
{{Flexend}}
== Packs ==
{{Flexstart|inline}}
{{InfoboxGame
|title=Skin Pack
|image=skin_pack_steam.jpg
|caption=Skin Pack Steam store header
|platform=[https://store.steampowered.com/app/1183540/Trailmakers_Skin_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-skin-pack/9P2XXT5WJ35B/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-skin-pack/9P2XXT5WJ35B/0010 Xbox Series]
|release=11 December 2019
}}
{{InfoboxGame
|title=Hat Pack
|image=hat_pack_steam.jpg
|caption=Hat Pack Steam store header
|platform=[https://store.steampowered.com/app/1171470/Trailmakers_Hat_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-hat-pack/9N0K6GC6G0GL/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-hat-pack/9N0K6GC6G0GL/0010 Xbox Series]
|release=11 December 2019
}}
{{InfoboxGame
|title=Skin Pack 2
|image=skin_pack_2_steam.jpg
|caption=Skin Pack 2 Pack Steam store header
|platform=[https://store.steampowered.com/app/1333570/Trailmakers_Skin_Pack_2/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/skin-pack-2/9MW4R2FJ3BRC/0010 Xbox One], [https://www.xbox.com/en-US/games/store/skin-pack-2/9MW4R2FJ3BRC/0010 Xbox Series]
|release=1 July 2020
}}
{{InfoboxGame
|title=Decals Expression Pack
|image=decals_expression_pack_steam.jpg
|caption=Decals Expression Pack Steam store header
|platform=[https://store.steampowered.com/app/2054120/Trailmakers_Decals_Expression_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/decals-expression-pack/9NCWQ30MJCTD/0010 Xbox One], [https://www.xbox.com/en-US/games/store/decals-expression-pack/9NCWQ30MJCTD/0010 Xbox Series]
|release=22 August 2022
}}
{{InfoboxGame
|title=Decals Action Pack
|image=decals_action_pack_steam.jpg
|caption=Decals Action Pack Steam store header
|platform=[https://store.steampowered.com/app/2054110/Trailmakers_Decals_Action_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/decals-action-pack/9N39238JB847/0010 Xbox One], [https://www.xbox.com/en-US/games/store/decals-action-pack/9N39238JB847/0010 Xbox Series]
|release=22 August 2022
}}
{{InfoboxGame
|title=Space Voyager Pack
|image=space_voyager_steam.jpg
|caption=Space Voyager Pack Steam store header
|platform=[https://store.steampowered.com/app/2579530/Trailmakers_Space_Voyager_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox Series]
|release=31 October 2023
[}}
{{InfoboxGame
|title=Rescue Pack
|image=Rescue_pack_steam.jpg
|caption=Rescue Pack Steam store header
|platform=[https://store.steampowered.com/app/2863610/Trailmakers_Rescue_Pack/ Steam], Windows Store, PS4, PS5, [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox One], [https://www.xbox.com/en-US/games/store/trailmakers-space-voyager-pack/9PBHX5V7H435/0010 Xbox Series]
|release=coming soon
}}
{{Flexend}}
951b0658f61d10daaa73810e72de16e9fa36234b
Game Modes
0
20
864
112
2024-03-27T20:30:20Z
Frans fbg
439888
wikitext
text/x-wiki
{{Stub}}
'''Game Modes''' are the different ways that [[Trailmakers]] can be played.
==Campaign Mode: Stranded in Space==
After your spacecraft crashes on an unknown alien world, you must gather [[salvage]] from across the vast map in order to build a spaceship to fly home. Dive into the depths of the ocean, fly into a volcano, the world is your oyster in this open-ended survival adventure.
<br />
== Campaign Mode: Rally ==
Learn the basics of racing in Trailmakers. You will learn how to build various kinds of vehicles, and steadily take on more challenges as you progress in this campaign. Once you've completed the campaign, take on the global leaderboards against the worldwide community of Trailmakers!
<br />
== Campaign: High Seas (DLC) ==
[[High Seas]] is the first expansion for Trailmakers, in which you play on a sandbox map with expanded physics - there's wind, weather and waves to contend with, as you try to find all the collectible artifacts and treasure chests.
<br />
== Race Island ==
Compete with your friends in Time Trials, or to become the top player on our global leaderboards!
== Sandbox Maps ==
There are currently 4 sandbox maps you can play in with your friends in Trailmakers:
* '''Treasure Island'''
You can solve treasure hunts and play your own way on [[Treasure Island]].
* '''Danger Zone'''
Live out your daredevil daydreams on the [[Danger Zone]] map, and pull off stunts on the ramps, halfpipes and other obstacles!
* '''Test Zone'''
If you're looking for a blank slate to build your creations in, [[Test Zone]] is for you. Challenge yourself and your friends in an environment free of obstacles.
* '''High Seas'''
Test your mettle as sailors in the first expansion to Trailmakers, or challenge your piloting skills against the winds on the [[High Seas]].
== Multiplayer ==
Trailmakers can (at the time of writing) be played by up to four players in multiplayer in all modes but Rally.
[[Category:Trailmakers]]
[[Category:Game Modes]]
[[Category:Server]]
{{DEFAULTSORT:Game Modes}}
8e1a107865956d4ee36241aff29e77fc3e7e0193
Workshop & Galleries
0
147
865
581
2024-03-27T20:40:23Z
Frans fbg
439888
wikitext
text/x-wiki
{{stub}}
== Steam Workshop ==
=== How to create custom workshop thumbnails ===
# Create the thumbnail (must be <1 MB in size)
# Create a txt file, then rename it to have a <code>.vdf</code> extension and open it with notepad. On that file write this, replacing <code>workshopid</code> with the id of the blueprint you want to update (the number at the end of the workshop link after <code>?id=</code>) and <code>C:\\path\\to\\thumbnail.png</code> with the path to your thumbnail file (using <code>\\</code> as folder separators) <syntaxhighlight lang="json">
"workshopitem"
{
"appid" "585420"
"publishedfileid" "workshopid"
"previewfile" "C:\\path\\to\\thumbnail.png"
}
</syntaxhighlight>
# Download [https://developer.valvesoftware.com/wiki/SteamCMD#Downloading_SteamCMD steamcmd] (a command line version of the steam client made by valve) and extract it into a folder
# Go to that folder with cmd and run it (just type <code>steamcmd</code> while on the same folder), this will update it and start it.
# Type <code>login username password steamGuardCode</code> (if you don't use steam guard 2FA you can skip that). This might log you out of the normal steam client
# Type <code>workshop_build_item "C:\\path\\to\\file.vdf"</code>, replacing <code>C:\\path\\to\\file.vdf</code> with the path to the txt file
# Quit the program by typing <code>quit</code>
9646171abee9984d1093d6ba4e982e7187b7bf5a
866
865
2024-03-27T20:42:37Z
Frans fbg
439888
wikitext
text/x-wiki
{{stub}}
== Steam Workshop ==
=== How to create custom workshop thumbnails ===
# Create the thumbnail (must be <1 MB in size)
# Create a txt file, then rename it to have a <code>.vdf</code> extension and open it with notepad. On that file write this, replacing <code>workshopid</code> with the id of the blueprint you want to update (the number at the end of the workshop link after <code>?id=</code>) and <code>C:\\path\\to\\thumbnail.png</code> with the path to your thumbnail file (using <code>\\</code> as folder separators) <syntaxhighlight lang="json">
"workshopitem"
{
"appid" "585420"
"publishedfileid" "workshopid"
"previewfile" "C:\\path\\to\\thumbnail.png"
}
</syntaxhighlight>
# Download [https://developer.valvesoftware.com/wiki/SteamCMD#Downloading_SteamCMD steamcmd] (a command line version of the steam client made by valve) and extract it into a folder
# Go to that folder with cmd and run it (just type <code>steamcmd</code> while on the same folder), this will update it and start it.
# Type <code>login username password steamGuardCode</code> (if you don't use steam guard 2FA you can skip that). This might log you out of the normal steam client
# Type <code>workshop_build_item "C:\\path\\to\\file.vdf"</code>, replacing <code>C:\\path\\to\\file.vdf</code> with the path to the txt file
# Quit the program by typing <code>quit</code>
==== Troubleshooting ====
'''ERROR! Failed to load build config file'''
The program can't find your txt file. Make sure you wrote the file path in the command correctly, using <code>\\</code> as folder separator and inside of quotes
Make sure you correctly changed the file extension of the txt file. By default, windows hides file extensions, and you can't change it without enabling them. If when you create a new txt file you don't see the name end in <code>.txt</code>, you need to enable the file extensions under the view menu at the top bar of the file explorer, then change the extension of the file again
'''ERROR! Failed to parse build config file'''
The program couldn't process your txt file correctly. This can be caused by many things, make sure its content are exactly as described with only the modifications mentioned
e60767055d0384310816b3e878f971e33da92637
File:Rescue pack steam.jpg
6
234
869
2024-03-28T07:59:18Z
Frans fbg
439888
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709